内容正文:
粤教版普通高中教科书
信息技术 必修1
数据与计算
第三章 算法基础
1
计算机解决问题的一般过程
回顾
问
题
1、什么是算法?
2、什么是程序?
3、怎样编写程序解决问题?
分析问题
设计算法
编写程序
调试运行程序
3.2、算法及其描述
1、算法的概念
2、算法的描述
第三章 算法基础
3.2.1
算法
问题:学期结束时,老师打算花50块钱购买一些笔记本奖励表现优秀的同学,请班长小明帮忙,小明决定买三种单价分别为6元、5元、4元的笔记本,请问可以买多少本?
探究活动一
买笔记本问题转化为求解方程:6x+5y+4z=50的正整数解
分
析
方案 x y z 合计
1 1 4 6 11
2 1 8 1 10
3 2 2 7 11
4 2 6 2 10
5 3 4 3 10
6 4 2 4 10
7 6 2 1 9
若要求方程6x+5y+4x=50的正整数解的个数t,则解决问题的步骤如下:
①t=0;
③x=1;
②y=1;
④z=1;
⑤如果满足式子6x+5y+4z=50,则解的个数加1(即t=t+1,表示右边式子的值赋值给左边式子),并输出这个解(即输出t,x,y,z的值);
⑥z=z+1;
⑦如果z<12则转步骤⑤,否则继续步骤8;
8y=y+1;
9如果y<10则转步骤④,否则继续步骤⑩;
0x=x+1;
11如果x<8则转步骤3,否则继续步骤12;
12结束。
算法
探究活动一
探究活动一
算法是指在有限步骤内求解某一问题所使用的一组定义明确的规则。通俗地说,算法就是用计算机求解某一问题的方法,是能被机械地执行的动作或指令的有穷集合。
有穷性、确定性、数据输入、数据输出、可行性
自主阅读教材并完成《3.1体验计算机解决问题的过程项目活动记录表》“人工解决与计算机解决问题方式的异同讨论记录“中知识与技能部分。
项目实施
认识算法:
算法是指在有限步骤内求解某一问题所使用的一组定义明确的规则。通俗地说,算法就是用计算机求解某一问题的方法,是能被机械地执行的动作或指令的有穷集合。
算法的特征:
1、有穷性:一个算法在执行有穷步之后必须结束。
2、确定性:算法执行的每一步骤必须有确切的定义,不能出现模棱两可的情况
3、数据输入:一个算法必须有零个或多个输入,以刻画运算对象的初始情况。
4、数据输出:一个算法有一个或多个输出,以反映对输入数据加工后的结果。没有输出的算法是没有意义的。
5、可行性:算法中执行的任何计算步骤都可以内分解为基本的课执行的操作步骤,即每个计算步骤都可以在有限的时间内完成。
若要求方程6x+5y+4x=50的正整数解的个数t,则解决问题的步骤如下:
①t=0;
③x=1;
②y=1;
④z=1;
⑤如果满足式子6x+5y+4z=50,则解的个数加1(即t=t+1,表示右边式子的值赋值给左边式子),并输出这个解(即输出t,x,y,z的值);
⑥z=z+1;
⑦如果z<12则转步骤⑤,否则继续步骤8;
8y=y+1;
9如果y<10则转步骤④,否则继续步骤⑩;
0x=x+1;
11如果x<8则转步骤3,否则继续步骤12;
12结束。
探究活动一
1.用自然语言描述算法
用自然语言描述算法,就是用人们日常所用的语言,如:汉语、英语等来描述算法。
3.2.2
算法的描述
t=0;
x=1;
y=1;
z=1;
如果满足式子6x+5y+4z=50,则购买的方案数加1(即t=t+1),并输出这种购买方案(即输出t、x、y、z的值)。
z=z+1;
如果z<=12则转⑤,否则继续⑧;
y=y+1;
如果y<=10则转④,否则继续⑩;
x=x+1;
如果x<=8则转③,否则继续⑫;
结束。
探究活动二
2.用流程图描述算法
用流程图描述算法是用程序框图来描述算法的一种表示方法。使用流程图描述算法,让人感到算法的流程描述清晰简洁。流程图的基本图形及其功能如下表所示。
图 形 名 称 功 能
开始/结束 表示算法的开始或结束
输入/输出 表示算法中变量的输入或输出
处理 表示算法中变量的计算与赋值
判断 表示算法中的条件判断
流程线 表示算法中的流向
连接点 表示算法中的转接
探究活动二
3.用伪代码描述算法
用伪代码描述算法就是用介于自然语言和计算机语言之间的文字和符号来描述算法。
t=0
for x in range(1,9):
for y in range(1,11):
for z in range(1,13):
if x*6+y*5+z*4==50:
{t=t+1;
输出解的个数t和三个整数x,y,z