110 likes | 257 Views
§ 1.2 算法基本语句. 输入 语句 、 输出 语句 、 赋值 语句 、 条件 语句 、 循环 语句. 输入 语句、 输出 语句和 赋值 语句一般格式是 :. INPUT “ 提示文字 ” ; 变量. 1. 输入 语句 :. 2. 输出 语句 :. PRINT “ 提示内容 ” ; 表达式. 3. 赋值 语句 :. 变量 = 表达式. 4. 条件结构 用 条件语句 , 程序语句来描述 :. IF 条件 THEN 语句 1 ELSE 语句 2 END IF. 否. 满足条件?. 是. 语句 1. 语句 2. IF 条件 THEN
E N D
§1.2 算法基本语句 输入语句、输出语句、赋值语句、条件语句、循环语句
输入语句、输出语句和赋值语句一般格式是: INPUT “提示文字”; 变量 1.输入语句: 2.输出语句: PRINT “提示内容”; 表达式 3.赋值语句: 变量 = 表达式
4.条件结构用条件语句,程序语句来描述: IF条件 THEN 语句1 ELSE 语句2 END IF 否 满足条件? 是 语句1 语句2 IF条件 THEN 语句 END IF 是 满足条件? 语句 否
开 始 例6 编写程序,输入一元二次方程 程序框图: 输入a,b,c 的系数,输出它的实数根。 Δ=b2-4ac 算法: p= -b/2a 每一步:输入a,b,c q=SQR(ABS (Δ))/(2a) 第二步:计算判别式△ 否 Δ≥0? 第三步:如果△<0有两不同实根, △=0有两个相同实根, △<0否则没实数根。根据情况输出结果。 是 x1=p+q x2=p-q 是 原方程无实数根 x1=x2? 否 原方程有两个相等 的实数根x1,x2 原方程有两个不等 的实数根x1,x2 结 束
QBASIC程序: INPUT “Please input a,b,c=:”;a,b,c d = b * b –4 * a * c p = – b / (2 * a) q = SQR(ABS(d)) / (2 * a) IF d >= 0 THEN x1 = p + q x2 = p – q IF x1 = x2 THEN PRINT “One real root:”;x1 ELSE PRINT “Two real roots:xl”;x1,”and x2”; x2 END IF ELSE PRINT “No real rool.” END IF END
例7 编写程序,使任意输入3个整数按大到小的顺序输出。 开始 INPUT “a,b,c=”;a,b,c IF b > a THEN t = a a = b b = t END IF IF c > a THEN t = a a = c c = t END IF IF c > b THEN t = b b = c c = t END IF PRINT a,b,c END 输入a,b,c b>a? 是 否 t=a,a=b,b=t 是 c>a? t=a,a=c,c=t 否 c>b? 是 t=b,b=c,c=t 否 输入a,b,c 结束
对应的流程图: 相应的QBASIC程序: 开始 INPUT “a,b,c=”;a,b,c IF b > a THEN t = a a = b b = t END IF IF c > a THEN t = a a = c c = t END IF IF c > b THEN t = b b = c c = t END IF PRINT a,b,c END 输入a,b,c b>a? 是 否 t=a,a=b,b=t 是 c>a? t=a,a=c,c=t 否 c>b? 是 t=b,b=c,c=t 否 输入a,b,c 结束
{ 0.25×m y= 0.25×50+0.25×(m-50) 0.25×50+0.35×50+0.45×(m-100) 2. 铁路运输托运行李,从甲地到乙地,规定每张客票托运费计算方法是:行李质量不超过50kg时,按0.25/kg元计算;超过50kg而不超过100kg时,其超过部分按0.3元/kg计算,超过100kg时,其超过部分按0.45元/kg计算,编写程序,输入行李质量,计算并输出托运的费用,并画出程序框图。 解: 设行李质量为m kg,应付运费这y元,则运费公式为
程序框图: 程 序: 开始 INPUT “m=”;m 输入m IF m<=50 THEN y=m﹡0.25 m≤50? 否 ELSE IF m<=100 THEN 否 m≤100? y=0.25﹡50+0.35﹡ (m-50) 是 是 ELSE y=0.25×50+0.35× 50+0.45×(m-100) y=0.25×50+ 0.35×(m-50) y=m×0.25 y=0.25﹡50+0.35﹡50+ 0.45﹡ (m-100) END IF 输入m END IF 结束 PRINT “y=”;y END
开始 输入重量G 否 G<=50 是 M=0.53*G M=50*0.53+0.85*(G-50) 输出运费M 结束 3、某快递公司规定甲、乙两地之间物品的托运费用根据下面的方法计算:物品重量在50千克以内,托运费为每千克 0.53 元,超过的话,超过部分每千克0.85元,试画出计算费用f的程序框图,并写出相应的QBASIC程序。 程序框图: 对应的QBASIC程序 INPUT “输入重量G=”;G IF G<=50 THEN M=0.53*G ELSE M=50*0.53+0.85*(G-50) END IF PRINT “运费为:”;M END