算法初步_1-课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Y
m=n/2
m=(n-1)/2
i=1
xi=xn+1-i Y
i=i+1
N i>m
Y 输出“YES”
N 输出“NO”
结束
INPUT “x,n=“,x,n IF n MOD 2=0 THEN
m=n/2 ELSE
m=(n-1)/2 END IF i=i+1 DO
p=MID$(STR$(X),i+1,1) q= MID$(STR$(X),n+2-i,i) IF p=q THEN
IF r =0 THEN
PRINT “星期日” ELSE
wenku.baidu.comPRINT ”星期”;r END IF END
结束
开始
2.画出程序框图,用二分法求方程1.3x226.013x2+0.975x-19.50975=0在(20,21)之
a=20:b=21:d=0.005
间的近似根(精确度为0.005)
f(x)=1.3x2-26.013x2+0.975x-19.50975
•
11、越是没有本领的就越加自命不凡 。2021/3/52021/3/52021/3/5M ar-215- Mar-21
•
12、越是无能的人,越喜欢挑剔别人 的错儿 。2021/3/52021/3/52021/3/5Fr iday, March 05, 2021
•
13、知人者智,自知者明。胜人者有 力,自 胜者强 。2021/3/52021/3/52021/3/52021/3/53/5/2021
S3:输出排序所得序列中的第一个数(即最小数)和最后一个数(即最大数)
算法2: S1:输入10个数 S2:计算这10个数的平均数 S3:依次比较10个数与平均数的大小,若大于或等于平均数,放在第一组,若 小于平均数,放在第二组. S4:用冒泡排序法将分别对两组数从小到大进行排序 S5:输出第1组中的最后一个数(即最大数)和第2组中的第一个数(最小数)
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
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高处自由落下,每次着地后又跳回到原来高度的一半再落下,编写
b=m
ELSE
a=m
否
END IF
LOOP UNTIL ABS(a-b)<d OR f=0
PRINT m
END
m=(a+b)/2
f(a)f(m)<0
是
b=m
否
a=m
|a-b|<d或f(m)= 0
是
输出所求的近似根m
结束
复习参考题B组:设计一个算法,判断一个正的(n>2)位数是 不是回文数,用自然语言描述算法步骤。
算法步骤:
S1:输入一个正整数X和它的位数n。
S2:判断n是不是偶数,如果n是偶数,令m=n/2,如果n 是奇数,令m=(n-1)/2。
S3:当I 从1到m取值时,依次判断x的第i位与第(n+i-1)位 是的数字是不是相等,如果都相等,则x是回文数, 否则, x 不是回文数。
开始
输入x,n
N n MOD 2=0
•
14、意志坚强的人能把世界放在手中 像泥块 一样任 意揉捏 。2021年3月5日星期 五2021/3/52021/3/52021/3/5
•
15、最具挑战性的挑战莫过于提升自 我。。2021年3月2021/3/52021/3/52021/3/53/5/2021
•
16、业余生活要有意义,不要越轨。2021/3/52021/3/5Marc h 5, 2021
a=20
b=21
d=0.005
y=1.3*x^3-26.013*x^2+0.975*x-19.50975
DO
m=(a+b)/2
g= 1.3*a^3-26.013*a^2+0.975*a-19.50975
f=1.3*m^3-26.013*m^2+0.975*m-19.50975
IF g*f<0 THEN
习题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
IF r=3 THEN
PRINT “Wednesday”
END IF
IF r=4 THEN
PRINT “Thursday”
END IF
IF r=5 THEN
PRINT “Friday”
END IF
开始 输入n r=n MOD 7
N r=0
Y
输出星期日
输出 r
INPUT “n=“;n r =n MOD 7
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
N
Y
i>45
p=p+1 q=q+1 m=m+1
输出p,q,m 结束
输入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个数从小到大进行排序.
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
意”
结束
10. END IF
3、某市固定电话(市话)的收费标准为:3分钟之内(包括三分钟)收取0.2元; 超过3分钟,每分钟(不足一分钟,按一分钟计算)按0.10元计算,设计一个算法,根据 通话时间计算话费.
开始
INPUT “t=“;t
If t<0 then
输入t
PRINT “输入有误”
Y t<0
•
17、一个人即使已登上顶峰,也仍要 自强不 息。2021/3/52021/3/52021/3/52021/3/5
谢谢观赏
You made my day!
我们,还在路上……
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
程序,求当它第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 “输入的数据不符题
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
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
输出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
i=i+1 ELSE
PRINT “NO” END END IF LOOP UNTIL i>M PRINT “YES” END
•
9、有时候读书是一种巧妙地避开思考 的方法 。2021/3/52021/3/5Fr iday, March 05, 2021
•
10、阅读一切好书如同和过去最杰出 的人谈 话。2021/3/52021/3/52021/3/53/5/2021 9:09:41 AM
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