资源简介 (共26张PPT)第2单元 编程计算第1单元 初识数据与计算第3单元 认识数据第4单元 计算与问题解决第5单元 数据分析与人工智能信息技术(必修1)2.1 计算机解决问题的过程学习目标1、了解计算机解决问题的过程。2、了解流程图的规范表示方法,学会使用自然语言和流程图描述算法。3、了解算法的三种基本结构。最强大脑游戏游戏规则:用十秒钟记忆十个物品以及他们的编号,之后根据提问回答物品的编号,看谁记住的物品编号数量多。思考:计算机如何实现游戏?什么是算法?算法有哪些特征呢?算法:解决问题的方法与步骤算法是尼克劳斯.沃斯(N.Writh)提出的,他指出:程序=算法+数据结构(DATA STRUCTURE)(即算法不能单独构成程序,它必须和数据结构合二为一)算法是在有限步骤内求解某一问题所使用的一组定义明确的规则。通俗点说,就是计算机解题的过程。算法的特征有穷性执行有限步之后结束,且每一步都执行时间都是有限的。确定性算法中的每一个步骤都应当是确定的,而不应当是含糊的、模棱两可的。输入项有零个或多个输入。输出项至少产生一个输出。可行性原则上能精确运行,用纸和笔做有限运算后可以完成。算法的描述方法自然语言:人们日常生活中使用的语言,汉语,英语,日语等都是自然语言,这些自然语言描述算法符合我们的表达习惯,且容易理解。流程图:也叫程序框图,是算法的一种图形化表示方法,与自然语言描述算法相比,用流程图描述算法形象、直观、更容易理解。计算机是人脑的延伸,要研究计算机解决问题的过程,首先要从人解决问题的角度谈起。你能用自已的话描述“最强大脑”游戏的解决步骤吗?要求:详细说明计算机处理的具体对象、每一步的准确处理过程活动一 使用自然语言描述算法环节 自然语言出题 1.显示游戏规则、物品及其编号10秒2.清屏答题 1.给出一个物品名称2.回答编号3.如果回答正确,答对的题数加14.重复以上步骤,直到答完5道题输出结果 输出答对的题数显示游戏规则、显示物品以及编号,屏幕停留10秒;随机出题,给出物品,回答编号;判断回答是否正确,如果正确,则答对的题述加1。重复以上步骤,直到答完5道题,显示答对的题数。描述方法 优点 缺点自然语言 通俗易懂 容易产生歧义,书写繁琐活动二 使用流程图描述算法图形符号 名称 功能起止框 表示一个算法的起始和结束输入/输出框 表示输入和输出的信息处理框 赋值、计算等处理判断框 表示判断的条件流程线 指向算法运行的方向连接符 表示流程图的接续活动二 使用流程图描述算法三种基本结构的流程图顺序结构把大象关进冰箱需要几步?用自然语言描述S1:拉开冰箱门;S2:大象进入冰箱;S3:关上冰箱门。自上而下用流程图表示S1S2S3分支结构如果“大象太大无法进入冰箱”,怎么办?用自然语言描述如果大象太大无法进入冰箱,那么就换一只小象进。做出判断用流程图表示象太大?进入换小象是否循环结构如果有三只小象进冰箱,怎么解决?用自然语言描述一只一只地进入,直到三只小象都进入冰箱,即完成。周而复始用流程图表示一只小象进入三只都进入冰箱了?是否你能用所学知识,完成“最强大脑”流程图吗?显示10秒满5题?出题答题回答正确?答对题数+1活动二 使用流程图描述算法描述方法 流程图优点 形象、直观,容易理解缺点 无法直接在计算机上运行活动三 用Python语言实现游戏在Python语言开发环境中,调试运行程序,观察运行结果。import random #随机模块import time #导入时间import os #导入OS模块print("你好,现在你有10秒钟的时间记忆下列物品及其编号")things=["苹果","香蕉","橙子","梨子","猕猴桃","柚子","猴魁","铁观音","彩蛋","复活节"]for i in range(10):print(i,":",things[i]) #在屏幕上显示编号及物品time.sleep(10) #延时10秒os.system("cls") #清屏幕,隐去编号及物品n=0 #记录答对的题数,初值为0t2=random.sample(things,5 ) #随机抽出5个物品for i in t2: #出5题ans=int(input(i + "的编号是:")) #输入编号答题if i==things[ans]:n=n+1 #如果回答正确,答对的题数加1print("\n你一共答对了",n,"次") #屏幕显示答对的题数input("\n按回车键结束程序")尝试将流程图与代码块进行匹配t2=random.sample(things,5)for i in t2:ans=int(input(i + "的编号是:"))ans=int(input(i + "的编号是:"))if i==things[ans]:n=n+1time.sleep(10)os.system("cls")print("你好,请用10秒记忆物品及编号")things=["苹果","香蕉","橙子","梨子","猕猴桃","柚子","猴魁","铁观音","彩蛋","复活节"]for i in range(10):print(i,":",things[i])如何增加游戏难度呢?改变物品;减少时间打开最强大脑.py,动手试一试!原代码 修改过的代码 程序运行的变化time.sleep(10) time.sleep(5) 延时改为5秒print("你好,现在你有10秒钟的时间记忆下列物品及其编号") print("你好,现在你有5秒钟的时间记忆下列物品及其编号") 提示的文字改变了t2=random.sample(things,5) t2=random.sample(things,3) 随机出3题 学生尝试自行修改部分代码,观察程序运行的变化。例如:计算机解决问题的过程调试运行Python语言0和1构成,计算机直接执行;但难以理解和操作符号化的机器语言,为特定的计算机系统而设计Java、 C、VB、 C++可读性更强,便于修改和维护程序设计语言的发展机器语言汇编语言高级语言课堂练习1.计算机解决问题的过程( )1)分析问题 2)设计算法3)编写程序 4)调试运行2.算法是解决问题的( )和( )方法和步骤3.描述算法可以有多种方法,比如可以用( )或( )进行描述。自然语言 流程图4.算法的三种基本结构( )( )( )要求:能画出流程图。顺序结构 分支结构 循环结构5.程序设计语言发展的过程( )( )( )机器语言 汇编语言 高级语言练习6.下列关于算法的特征描述不正确的是( )A、有穷性:算法必须在有限步之内结束B、确定性:算法的每一步必须有确切的含义C、输入:算法至少有一个输入D、输出:算法至少有一个输出7.以下不属于算法基本特征的是( )A、可执行性 B、确定性 C、有穷性 D、无限性8.下面说法正确的是( )A、算法+数据结构=程序 B、算法就是程序 C、数据结构就是程序 D、算法包括数据结构9.右侧图形符号“"在算法描述流程图中表示( )A、算法的开始或结束B、输入输出操作C、处理或运算的功能D、用来判断条件是否满足需求10.在使用流程图描述算法中,表示变量的计算与赋值的符号框为( )A、矩形框 B、菱形框 C、平行四边形框 D、椭圆形框11.下列关于算法说法不正确的是( )A、算法独立于任何具体的语言,BASIC算法只能用BASIC语言来实现B、解决问题的过程就是实现算法的过程C、算法是程序设计的"灵魂"D、算法可以通过编程来实现CDABDA课堂小结1、计算机解决问题的4个步骤:分析问题——设计算法——编写程序——运行与调试2、描述算法的2种方法:使用自然语言和流程图描述算法3、三种基本结构的流程图4、用Python语言实现游戏5、程序设计语言的发展:机器语言、汇编语言、高级语言 展开更多...... 收起↑ 资源预览