- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
【例题解析】 〖例2〗:编写程序,计算一个学生数学、语文、 英语三门课的平均成绩。 分析:先写出算法,画出程序框图,再进行编程。 程序框图
开始 输入a,b,c
abc y 3
程序: INPUT “Maths,Chinese,English”;a,b,c y=(a+b+c)/3 PRINT “y=”;y END
成立 ቤተ መጻሕፍቲ ባይዱ成立
③循环结构
While(当型)循环 Until(直到型)循环 A A
P
B
A
B
P 不成立
成立 成立
P
不成立
①顺序结构
顺序结构是由若干个依次执行的步骤组 成的。这是任何一个算法都离不开的基本结 构
A B
例1 已知一个三角形的三边边长分别为a、b、c,利用 海伦-秦九韶公式设计一个算法,求出它的面积,画出 它的程序框图.
探究
你能写出”判断整数n(n>2) 是否为质数”的算法吗?
第一步, 给定大于2的整数n.
第二步, 令i=2.
第三步, 用i除n,得到余数r.
第四步, 第五步,
判断”r=0”是否成立.若是,则n不是质数, 结束算法;否则,将i的值增加1,仍用i表示. 判断”i>(n-1)”是否成立.若是,则n是质数, 结束算法;否则,返回第三步.
例1 用描点法作函数y=x3+3x2-24x+30的图象时,需要 求出自变量和函数的一组对应值.编写程序,分别计算当 x=-5,-4,-3,-2,-1,0,1,2,3,4,5 时的函数值.
程序: INPUT “x=”;x -----------------输入语句 y=x^3+3*x^2-24*x+30---------赋值语句 PRINT x -------------------------输出语句 打印语句 PRINT y -------------------------打印语句 输出语句 END -------------------------表示结束
例1
(1)第一步,
第二步, 第三步, 第四步, 第五步,
(1)设计一个算法,判断7是 否为质数;
用2除7,得到余数1.因为余数不为0, 所以2不能整除7.
用3除7,得到余数1.因为余数不为0, 所以3不能整除7. 用4除7,得到余数3.因为余数不为0, 所以4不能整除7. 用5除7,得到余数2.因为余数不为0, 所以5不能整除7. 用6除7,得到余数1.因为余数不为0, 所以6不能整除7.因此,7是质数.
三.赋值语句 (1)赋值语句的一般格式: 变量=表达式 (2)赋值语句的作用是:先计算出赋值号右边表达 式的值,然后把这个值赋给左边的变量,使该变量的 值等于表达式的值。 (3)赋值语句中的“=”称作赋值号,与数学中的等 号的意义是不同的.赋值号的左右两边不能对换. (4)赋值语句左边只能是变量名字而不是表达式, 如:2=x是错误的;右边表达式可以是一个数据、 常量或算式;不能利用赋值语句进行代数式的 演算。(如化简、因式分解、解方程等) (5)对于一个变量可以多次赋值。
的步骤
第一步,(消元)
①+②×2,得 7 x 11 ③
(解一元一次方程) 第二步, 11 解③得 x 7 第三步,(代入求解) 6 11 将 x 代入①,得 y 7 7
变一变
3 x 2 y 3 2 x y 4
a1 x b1 y c1 ① a2 x b2 y c2 ② (a1b2 a2b1 0)
输出y
结束
〖例3〗:给一个变量重复赋值。
程序: A=10 A=A+15 PRINT A END A的输出 值是多少?
分析:此程序给变量A赋了两次值.A 的初值为10,第二次赋值后,初值被“覆 盖”,A的值变为25,因此输出值是25.
【探究新知】 我们知道,顺序结构是任何一个算法都离不开 的基本结构。 输入、输出语句和赋值语句基本上对应 (如右图) 于算法中的顺序结构. 计算机从上而下按照语句排列 的顺序执行这些语句. 输入语句和输出语句分别用来 实现算法的输入信息,输出结果的功 能.
语句n 语句n+1
输入语句和输出语句分别用来实现算法的 输入信息,输出结果的功能。
(1)使用标准的图形符号。 (2)框图一般按从上到下,从左到右的方向画。
(3)除判断框外,大多数流程图符号只有一个 进入点和一个退出点。判断框具有超过一个退出 点的唯一符号。 (4)判断框分两大类,一类判断框“是”与“否” 两分支的判断,而且又且仅有两个结果;另一类是 多分支判断,有几种不同的结果。
写出解第二个方程组的算法:
第一步,
①× a 2 - ②× a1 得
(a2b1 a1b2 ) y a2c1 a1c2 ③
第二步, 解③,得
a2 c1 a1c2 y a2b1 a1b2
④
b1c2 b2c1 第三步, 将④代入①得 x a2b1 a1b2
算法的定义:
在数学上,通常是按照一定规则 解决某一类问题的明确有限的步骤。
注意: INPUT语句不但可以给单个变量赋值,还可以 给多个变量赋值,其格式为:
INPUT “提示内容1,提示内容2,提示内容3,…”;变量1,变量2,变量3,…
例如,输入一个学生数学,语文,英语三门课的成绩, 可以写成:
INPUT “数学,语文,英语”;a,b,c 练一练:请你用输入语句表达课本P5和P9 页程序框图中输入框中的内容. P7页: INPUT “n=”; n P9页: INPUT a, b, c
(2)设计一个算法,判断35是否为质数.
算法:
第一步,
第二步, 第三步, 第四步,
用2除35,得到余数1.因为余数不为0, 所以2不能整除35.
用3除35,得到余数2.因为余数不为0, 所以3不能整除35. 用4除35,得到余数3.因为余数不为0, 所以4不能整除35. 用5除35,得到余数0.因为余数为0, 所以5能整除35.因此,35不是质数.
输出S
结束
习题1 设计一算法:输入圆的半径,输出圆的面积,并画出流程图 算法分析:
开始
第一步:输入圆的半径
第二步:利用公式“圆的面 积=圆周率×(半径的平方)” 计算圆的面积; 第三步:输出圆的面积。
计算S=Pi*R*R 定义Pi=3.14
输入半径R
思考:整个程序框图有什么特点?
输出面积S
结束
②条件结构(选择结构)
算法的流程根据条件是否成立有不同的 流向。条件结构就是处理这种过程的结构。
成立
P
不成立
P
成立
不成立
A
B A
例2 任意给定3个正实数,设计一个算法,判断分别以这 3个数为三边边长的三角形是否存在.画出这个算法的程序 框图. 开始
输入a、b、c
a+b>c,a+c>b, b+c>a是否同时成立 是 存在这样的三角形 否
成立
不成立
例3 设计一个计算1+2+3+……+100的值的算法,并画出程序框图。 算法分析: 需要一个累加变量和一个计数变量,将累加变量的初始值 设为0,计数变量的值可以从1到100. 开始
i=1 sum=0 i<=100?
否 输出sum i=i+1 是 sum=sum+1
结束
第一章
算法初步
1.2 基本算法语句
什么是算法呢? 1、
6 5 (4 2)
先去括号 再乘除 后加减
2问题
问: 要把大象装冰箱,分几步? 答:分三步: 第一步:打开冰箱门
第二步:把大象装冰箱
第三步:关上冰箱门
什么是算法呢?
简单地说,算法就是解决 问题的程序或步骤。
写一写
写出 解方程组
3 x 2 y 3 ① 2 x y 4 ②
一.输入语句 输入语句的一般格式 INPUT “提示内容”;变量
说明: (1)输入语句的作用是实现算法的输入信息功能; (2)“提示内容”提示用户输入什么样的信息, 变量是指程序在运行时其值是可以变化的量; (3)输入语句要求输入的值只能是具体的常数, 不能是函数、变量或表达式; (4)提示内容与变量之间用分号“;”隔开, 若输入多个变量,变量与变量之间用逗号“,”隔开
开始 一般用i=i+1 表示. 输入n i=2
设n是一个大 于2的整数.
求n除以i的余数r
说明:i表示从2~(n-1) 1仍用i表示 i=i+1 的所有正整数,用以 i的值增加 判断例1步骤2是否终 否 i≥n-1或r=0? 止,i是一个计数变量, 是 有了这个变量,算法 否 r=0? 才能依次执行.逐步 是 考察从2~(n-1)的所 输出“n不是质数” 输出“n是质数” 有正整数中是否有n 的因数存在. 结束
你会了吗?
写出求1+2+3+
+100的一个算法
算法1: 第一步:将原式变形为 (1+100)+(2+99)+
+(50+51);
第二步:计算101×50; 第三步:写出运算结果
算法2: 第一步:取n=100;
n(n 1) 第二步:计算 2
第三步:写出运算结果
2.任意给定一个正实数,设计一个算法求以这个 数为半径的圆的面积.
(5)在图形符号内描述的语言要非常简练清楚。
开始 输入n i=2
用程序框图来表示算法,有 三种不同的基本逻辑结构:
顺序结构
求n除以i的余数r i=i+1
i≥n或r=0?
是 否 否
循环结构
r=0?
是
条件结构
n是质数