高二数学算法初步PPT教学课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
S6:i=i+1,判断是否i>45,若是执行 S7,否则返回S2
N
Y i>45
输出p,q,m
S7:输出p,q,m
结束
开始 p=0,q=0,m=0,i=1,n=45
输入t
0≤t<60 Y N
Y 60≤t<80
N 80≤t ≤100 Y
N
i=i+1
Nwk.baidu.com
Y
i>45
p=p+1 q=q+1 m=m+1
输出p,q,m 结束
p=0 q=0 m=0 i=1 n=45
DO INPUT “ t=“;t IF 0<=t AND t<60 THEN
p=p+1
END IF
IF 60<=t AND t<80 THEN q=q+1
ENF IF IF 80<=t AND t<=100 THEN
m=m+1 END IF
i=i+1
LOOP UNTIL i>45
N
N 0<t<=3
Y
y=0.2
y=0.1*INT(t+1)
END IF IF t<=3 AND t>0 THEN
y=0.2 ELSE
y=0.1*INT(t+1) END IF
输出y
PRINT y;”元” END
结束
4.对任意正整数n,设计一个程序框图求 s111
出程序:
开始
23
INPUT “n=“;n
Y y=x
X<0 Y y=(x+2)2
N
N
x=0
y=(x-2)2
Y y=4
输出y
输出y
结束
结束
开始
2、求解二元一次方程组:
输入 a1,b1,c1
1. INPUT “a1,b1,c1=“;a1,b1,c1
输入a2,b2,c2 d=a1*b2-a2*b1
d<>0
2. INPUT “a2,b2,c2=“;a2,b2,c2
max=1 min=10^10 i=1 WHILE i<=10
INPUT “x=“;x IF max<x THEN
max=x END IF IF min>x THEN
min=x END IF i=i+1 WEND PRINT “max,min=“;max,min end
6.一个球从100M高处自由落下,每次着地后又跳回到原来高度的一半再落下,编写
意”
结束
10. END IF
3、某市固定电话(市话)的收费标准为:3分钟之内(包括三分钟)收取0.2元; 超过3分钟,每分钟(不足一分钟,按一分钟计算)按0.10元计算,设计一个算法,根据 通话时间计算话费.
开始
INPUT “t=“;t
If t<0 then
输入t
PRINT “输入有误”
Y t<0
PRINT “p,q,m=“;p.q.m
END
复习参考题:A组:1、画程序框图对于输入的X值,输出相应的
Y值:
0 (x<0)
(x+2)2 (x<0)
(1)y=
开始
1 (0≤x<1) x (x≥1)
(2) y= 4 (x=0) 开始 (x-2)2 (x>0)
输入X
输入X
X<0
Y y=0
N
N
x≥1
y=1
习题1.3 B组:某班有45位学生,设计一个算法,输入每个学生的数学成 绩后,分别统计在区间[0,60), [60,80), [80,100]内的成绩的个数,用自然语言 描述算法步骤,可用a(i)表示第i个学生的成绩。 开始
算法步骤:
p=0,q=0,m=0,i=1,n=45
S1:令p=0,q=0,m=0,i=1,n=45
输出2s-100
结束
PRINT “(3)=“;2*s-100 END
开始
输入 n
r=n mod 7
r=0
Y
N
r=1
Y
N
r=2
Y
N
r=3
Y
N
r=4
Y
N
r=5
Y
N
r=6
Y
N
结束
复习参考题B组:1、编写程序,将用户输入的正 整数转换成相应的星期值输出。
Sunday Monday Tuesday Wednesday Thursday Friday Saturday
输入n
i=1
1 的值,并写 n
i=1,s=0
s=s+1/i
s=0 DO
s=s+1/i
i=i+1
i=i+1
N
i>n
Y
输出s
LOOP UNTIL i>n PRINT s END
结束
5.设计两种算法,从输入的10个数中选出最大值和最小值,用自然语言描述算法 步骤 算法1: S!:输入出10个数. S2:用冒泡排序法将这10个数从小到大进行排序.
S2:输入学生的成绩t
s3:判断0≤t<60,若是则p=p+1,执行 S6 s4:判断60≤t<80,若是则q=q+1, 执行S6
输入t
Y 0≤t<60
N
Y
60≤t<80
N 80≤t ≤100 Y
p=p+1 q=q+1 m=m+1
s5:判断80≤t ≤100,若是则
N
m=m+1, 执行S6
i=i+1
程序,求当它第10次着地时,(1)向下的运动共经过多少米?(2).第10次着地后反弹
多高?(3).全程共经过多少米?
开始
k=1
k=1,s=0
s=0 i=100
i=100
k=k+1
WHILE k<=100 s=s+I
Y
k<=10
N 输出s
输出i
i=i/2 s=s+i
i=i/2 k=k+1 WEND PRINT “(1)=“;s PRINT “(2)=“;i
3. d=a1*b2-a2*b1
4. IF D<>0 THEN
5.
x=(b2*c1-b1*c2)/d
x=(b2*c1-b1*c2)/d
6.
y=(a1*c2-a2*c1)/d
7.
PRINT “x,y=“; x,y
y=(a1*c2-a2*c1)/d
8. ELSE
输出x,y
输入的数据不符题9.意
PRINT “输入的数据不符题
IF r=3 THEN
PRINT “Wednesday”
END IF
IF r=4 THEN
PRINT “Thursday”
END IF
IF r=5 THEN
INPUT “n=“;n
IF r=6 THEN
r=n MOD 7
PRINT “Saturday”
IF r=0 THEN
END IF
PRINT “Sunday” end
END IF
IF r=1 THEN
PRINT “Monday”
END IF
IF r=2 THEN
PRINT “Tuesday”
END IF
S3:输出排序所得序列中的第一个数(即最小数)和最后一个数(即最大数)
算法2: S1:输入10个数 S2:计算这10个数的平均数 S3:依次比较10个数与平均数的大小,若大于或等于平均数,放在第一组,若 小于平均数,放在第二组. S4:用冒泡排序法将分别对两组数从小到大进行排序 S5:输出第1组中的最后一个数(即最大数)和第2组中的第一个数(最小数)