简单的算法流程图设计题-流程图?

大家好,今天不写代码,改为教大家画画,不过不是教素描或者油画之类的,而是画流程图。

在画流程图之前,先简单介绍下算法的概念,理解即可。然后通过画流程图来复习下前面学过的几种程序控制结构。

在使用计算机处理各种不同的问题时候。都是需要先对各类问题进行分析,确定解决问题的具体方法和步骤。根据这些方法和步骤来编写计算机程序代码,这些具体的步骤和方法就是解决问题的算法。

根据算法,选择一种编程语言来编写可以完成任务的代码,就是编制程序。对于复杂的应用程序,我们在开始编写代码之前,都应先设计起算法。

流程图就是一种描述算法的方式,相比于纯文字的描述,可以把解决问题的思路以更清晰、直观的方式展现出来,有助于更好的设计程序过程。

那么首先来看一下常用的流程图符号(在excel中“插入”选项卡,插入“形状”,流程图部分都有下列常用的符号。)

下面就通过流程图来复习下学习过的控制程序结构。

下面先复习下该语句的语法结构。

下面通过流程图来展示判断语句的运行过程。

判断结构开始时,先进行逻辑表达式1判定,结果为真就执行语句序列1。如果结果为假,就进行逻辑表达式2的判定,如果结果为真,就执行语句序列2,结果为假就判定逻辑表达式3....直到所有逻辑表达式判定都为假时,就执行语句序列n,最后判断结构结束。

下面先复习下该语句的语法结构。

循环变量获得初始值,for循环开始先判定是否超过了终值,如果结果为真就退出循环。如果没超过就执行循环中的语句序列1,中间可以判定是否exit for循环。一次循环之后变量累加步长。从开始再重新判断循环变量是否超过终值。

下面先复习下该语句的语法结构。

循环开始时,先判定是否符合while循环条件,如果结果为假就退出循环,如果为真,就执行语句序列1,执行完后再回到逻辑表达式,重复逻辑判定。如果循环中符合exit do的条件也会退出循环。


通过对几个常用的程序控制结构的复习,希望各位更好的学习掌握流程图,有利于后期设计程序时思路更清晰直观,对于流程图,目前也有很多专业的软件可以绘制,也可以像我一样用excel直接插入形状来绘制,更直接的是再纸上绘制。祝大家学习愉快。


结合高一学生基础,通过狼羊菜过河的问题,探究解决问题的过程,即算法,有趣的编程实例——"最强大脑"游戏,初步了解算法的三种基本结构,即顺序结构、分支结构和循环结构,以及用自然语言和流程图对算法进行描述,熟悉计算机程序设计语言Python的开发环境,了解程序设计语言的发展,学会编写简单的程序解决问题,初入程序设计的大门。

1.起点水平:继第一单元的学习,学生了解了信息和数据的特征,理解了数据、信息和知识的关系,感受到了数据在现代社会生活中的重要作用;通过比较多种计算方法在解决问题时的特点,体会到计算机在处理数据上的优势和价值。本节课初步接触Python语言,对于学生来说是陌生的,且有挑战性。在教学过程中要注意将代码简单化,不能将代码讲解得过于详细、复杂,不能让学生产生畏难情绪。在教学中要充分考虑到学生的个性差异和创造性,创设宽松、和谐的学习气氛,给学生自由发挥的空间,让学生多尝试多感受。

2.学习特征分析:学生总体思维活跃,对游戏或生活中的实际案例较为感兴趣;在有挑战性和竞争的教学环节中表现出十足的积极性。

3.学习动机:学生在课堂上主动学习的动机还是较为匮乏的,学生的注意力极其容易被机房设备和游戏分散。教师在课堂中要注意把控课堂纪律,用有趣的课堂吸引学生注意力,引导学生参与课堂活动中,提高学生学习的兴趣。

1. 通过探讨表示游戏的算法,了解使用自然语言、流程图描述算法,进一步理解三种基本结构的流程图。

2. 通过用Python语言实现游戏的研究,掌握计算机解决问题的一般过程,熟悉Python语言的开发环境,了解程序设计语言的发展。

3. 在项目活动中体验数字化学习过程,感受利用数字化工具和资源的优势。

【教学重点】算法的表示及算法的三种基本结构

【教学难点】能够使用流程图表示算法。

问题解决法、启发法、创设情境、讲授法、比较法

情境-陶冶教学策略 、指导性探究

SWF文件、PPT课件、机房教室

以狼、羊、蔬菜过河的游戏:一个人带一只羊、一只狼和一篮菜过河,只有一只小船,一次只能带一个物品。如果羊和狼在一起,狼吃羊;如果羊和菜在一起,羊吃菜。怎样才能安全渡河?引出本节课的重点之一算法。该游戏中狼吃羊、羊吃菜的生物界完善的食物链引出平衡的思想政治教育。物理上有质量守恒;水在0~100度之间就是水,高于或低于这个区间就为水蒸气或冰;空气的温度在5~26℃就适宜人舒适的居住,太冷太热都不适宜;地球有白天就有黑夜,否则就是极夜或极昼;有大就有小,有阴就有弱,有舍就有得,有快就有慢;古代的三国鼎立,现代的一超多强带来现代的和平。凡事有度、不走极端。

小游戏1——狼、菜、羊过河

本节课学习2.1 计算机解决问题的过程。首先我们先来玩个小游戏。

一个人带一只羊、一只狼和一篮菜过河,只有一只小船,一次只能带一个物品。如果羊和狼在一起,狼吃羊;如果羊和菜在一起,羊吃菜。怎样才能安全渡河?

运行"狼羊菜.swf",试试你的想法是否可行?

(演示swf文件的运行

运行"狼羊菜.swf"。尝试游戏通关。

狼羊菜是经典的算法问题。以游戏来进入课堂,激发学生的学习兴趣。

同学们在这个游戏中体会着平衡。狼吃羊、羊吃蔬菜,这是生物界的食物链平衡。生活中还有很多的平衡。

水在0~100度之间就是水,高于或低于这个区间就为水蒸气或冰;

空气的温度在5~26℃就适宜人舒适的居住,太冷太热都不适宜;

地球有白天就有黑夜,否则就是极夜或极昼;

有大就有小,有阴就有弱,有舍就有得,有快就有慢;

古代的三国鼎立,现代的一超多强带来现代的和平。

当你每天都觉得不开心的时候,不妨找朋友、老师、家人聊聊天。

世间万物强调平衡,我们个人也是在平衡——不平衡——新的平衡中不断发展。注意学生的心理健康教育。

请用语言描述你完成游戏的步骤

第一趟(去):人带羊过河

第二趟(回):留下羊,人单独回

第三趟(去):人带狼过河

第四趟(回):留下狼,人带羊回

第五趟(去):留下羊,人带菜过河

第六趟(回):留下菜,人单独回

第七趟(去):人带羊过河(人狼羊菜都过河了)

算法是解决问题的方法和步骤。

解决问题的过程,就是实现算法的过程。

算法的描述要求尽可能精确、详尽。

常用的描述算法的方法有:自然语言和流程图。

  执行有限步之后结束,且每一步都执行时间都是有限的。

  算法中的每一个步骤都应当是确定的,而不应当是含糊的、模棱两可的。

  有零个或多个输入;

  原则上能精确运行,用纸和笔做有限运算后可以完成。

狼羊蔬菜的游戏仅仅引出算法的概念及特征。

小步子走,慢慢深入分析。

自然语言、流程图描述算法

小游戏2——"最强大脑"

过渡:刚才我们有说到描述算法的常用方法有自然语言、流程图,我们分别用自然语言和流程图来描述下最强大脑小游戏的算法。感受下两种方式的差异。

  用10秒记忆10个物品及其编号,之后根据提问回答5个物品的编号,看你能记住几个物品及其编号?

活动一:用自然语言描述算法

观察"最强大脑程序.py"游戏运行的过程。填写课本P19表2.1.1

1.显示游戏规则、物品及其编号,屏幕停留10秒

5.如果回答正确,答对题数+1

6.重复以上步骤,直到答完5题

活动二:用流程图描述算法

用流程图符号试画出"最强大脑"的流程图。

过渡:用流程图描述算法的方式不像自然语言描述方式那样简单,日常语言就可以,它是图形化表达,需要了解一些框图符号的含义。

过渡:这些符号是如何使用的呢?我们来看三个例子。

例:"超市购物"的算法表示

例:"超市购物之选购商品"的算法表示

2、如果是想要的,转3,否则转4

例:"超市购物之付钱结账"的算法表示

1、查看有没有商品,如果有就转2,否则就转3

2、扫描商品条形码,转1

3、停止扫描、收钱找零

他们也就是三种基本结构的流程图。

打开"流程图填空.ppt",将步骤移动到对应的流程图方框内,使流程图完整。

两种方式对比后,我们来总结自然语言描述算法的特点:

自然语言就是人们日常使用的语言,它是最简单的描述算法的工具。

用自然语言描述算法符合我们的表达习惯,并且容易理解。   

用自然语言描述算法容易产生歧义,表示的含义往往不大严格。

流程图描述算法的特点:

流程图也称为程序框图,是算法的一种图形化表示方法。

与使用自然语言描述算法相比,流程图描述算法形象、直观、更容易理解。   

流程图规范是由美国国家标准学会制定的一系列流程图符号。

明确游戏规则,填表2.1.1。体会自然语言描述算法。

了解流程图中图形的含义,补充流程图。

从狼羊蔬菜完全的人工解决问题,到现在的编程的参与,慢慢的过渡。最强大脑的游戏也比较有意思,运行过程也比较清晰。

用自然语言和流程图来描述下最强大脑小游戏、超市购物的算法,感受下两种方式的差异。

算法有_________和________描述算法,但计算机是无法直接识别这些描述的。

计算机解决问题的过程:提出问题—分析问题—设计算法—编写程序—调试程序—得到结果。

只能通过编写程序,才能让计算机解决问题。

Python语言实现"最强大脑"

print("你好,现在你有10秒钟的时间记忆下列物品及其编号")

#在屏幕上显示编号及物品

#清屏幕,隐去编号及物品

#记录答对的题数,初值为0

#如果回答正确,答对的题数加1

活动三:借助流程图分析代码

活动说明:借助"最强大脑"游戏问题的完整流程图,分析书本P22的代码,尝试找出与P23流程图中的处理框对应的代码。

描述算法过渡到编写程序。同时这里点题:计算机解决问题的过程。与人解决问题的过程类似。

分析程序与流程图结合,降低程序理解的难度。

程序设计语言经历了机器语言、汇编语言到高级语言的发展过程。 

粗略介绍程序设计语言的 发展。

计算机解决问题的过程是提出问题—分析问题—设计算法—编写程序—调试程序—得到结果。

在设计算法环节我们要学会自然语言、流程图描述算法,同时知道三种基本结构的流程图。最后我们从下节课开始就要开始慢慢学习程序设计语言Python的语法。

1、把冰箱门打开 2、把大象装进去 3、把冰箱门关上 在中央电视台幸运52节目中,有一个猜商品价格的环节,竟猜者如在规定的时间内大体猜出某种商品的价格,就可获得该件商品.现有一商品,价格在0-8000元之间,采取怎样的策略才能在较短的时间内说出正确(大体上)的答案呢? 第一步:报“4000”; 第二步:若主持人说高了(说明答案在0~4000之间),就报“2000”,否则(答数在之间)报“6000”; 第三步:重复第二步的报数方法取中间数,直至得到正确结果. 什么是算法? 算法通常是解决问题的方法与步骤。 现在,算法通常可以编成计算机程序,让计算机 执行并解决问题. 做每一件事情必须有基本元素,这种基本元素叫数据。 数据和算法构成了一个完整的程序(程序=数据+算法) 著名数学家华罗庚“烧水泡茶”的两个算法。 算法一: 第一步:烧水; 第二步:水烧开后,洗刷茶具; 第三步:沏茶。 区别是在什么时间洗刷茶具。第二个算法的科学性在于应用了“统筹方法”。因此,我们可以明白一个好算法必须用到科学的方法。我们应该好好学习各学科处理问题的科学方法。 算法二: 第一步:烧水; 第二步:烧水过程中,洗刷茶具; 第三步:水烧开后沏茶。 大家讲讨论一下这两个算法的区别在哪里? 哪个算法更高效?为什么? 1.确定性:算法中的每一步应该是确定的并且能有效地执行且 得到确定的结果,而不应当是模棱两可. 2.有限性:一个算法的步骤序列是有限的,它应在有限步操作 之后停止,而不能是无限的. 3.可执行性:算法中的每一步操作都必须是可执行的,也就是 说算法中的每一步都能通过手工和机器在有限时间内完成. 4.有输入信息. 5.有输出结果. 算法的要求(特征) 自然语言就是人们日常使用的语言,可以是汉语、英语或数学语言等.用自然语言描述算法的优点是通俗易懂,当算法中的操作步骤都是顺序执行时比较容易理解.缺点是如果算法中包含判断和转向,并且操作步骤较多时,就不那么直观清晰了. (1)自然语言 算法的表示 描述算法可以有不同的方式,常用的有: 巩固概念 趣味题 .一个农夫带着一条狼、一头山羊和一篮蔬菜要过河,但只有一条小船.乘船时,农夫只能带一样东西.当农夫在场的时候,这三样东西相安无事.一旦农夫不在,狼会吃羊,羊会吃菜.请设计一个算法,使农夫能安全地将这三样东西带过河. 第一步:农夫带羊过河; 第二步:农夫独自回来; 第三步:农夫带狼过河; 第四步:农夫带羊回来; 第五步:农夫带蔬菜过河; 第六步:农夫独自回来; 第七步:农夫带羊过河. 、一位商人有9枚银元,其中有1枚略轻的是假银元。你能用天平(不用砝码)将假银元找出来吗? 第一步:将9枚金币平均分成三组,将其中两组放在天平的两边. 如果天平平衡, 则假的金币必定在另外一组;如果天平不平衡,则假的金币必定在较轻的一组; 第二步:将有假金币的一组金币中,取出两枚金币,分别放在天平的两边.如果天平平衡,则假的金币必定是剩余的;如果天平不平衡,则假的金币必定在较轻的一边. 结束 用程序框图表示的算法更加简练,直观,流向清楚. (2)流程图表示 程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形. 通常,程序框图由程序框和流程线组成. 一个或几个程序框的组合表示算法中的一个步骤; 流程线是方向箭头,按照算法进行的顺序将程序 框连接起来. 基本的程序框和它们各自表示的功能如下: 图形符号 名称 功能 终端框(起止框) 表示一个算法的起始和结束 输入、输出框 表示一个算法输入和输出的信息 处理框(执行框) 判断某一条件是否成立,成立时在出口处标明“是”或“Y”;不”成立时标明“否”或“N”. 判断框 赋值、计算 流程线 连接程序框 连接点 连接程序框图的两部分 小结 1、算法的定义 2、算法的特点与作用 3、算法的表示——自然语言 流程图 算法 + 程序语言 = 程序(软件) 感谢观看

我要回帖

更多关于 简单的算法流程图 的文章

 

随机推荐