文档详情

条件语句–基本算法语句.ppt

发布:2017-05-04约4.59千字共27页下载文档
文本预览下载声明
1.2 基本算法语句 算法中的条件结构是由条件语句来表达的, 条件语句是处理条件分支逻辑结构的算法语句 . 条件语句的一般格式 满足条件? 语句 是 否 只含一个“分支”的条件结构 写成条件语句为 IF 条件 THEN 语句体 END IF 当计算机执行这种形式的条件语句时,首先对IF后的条件进行判断,如果条件符合,就执行THEN后的语句体,否则执行END IF之后的语句. 满足条件? 语句1 语句2 是 否 含两个“分支”的条件结构 写成条件语句为 IF 条件 THEN 语句体1 ELSE 语句体2 END IF 当计算机执行上述语句时,首先对IF后的条件进行判断,如果条件符合,就执行THEN后的语句体1,否则执行ELSE后的语句体2. 你能写出这个算法对应的程序吗? x≥0? 开始 结束 输入x 是 输出x 否 输出-x END INPUT x IF x=0 THEN PRINT x ELSE PRINT -x END IF 阅读下面的程序,你能说出程序的运行过程并画出对应的程序框图吗? x0? 开始 结束 输入x 是 x=-x 输出x 否 END INPUT x IF x0 THEN x=-x END IF PRINT x 某居民区的物业管理部门每月按以下方法收取卫生费:3人和3人以下的住户,每户收取5元;超过3人的住户,每超出1人加收1.2元。 问题情境 试设计算法,根据输入的人数计算应收取的卫生费? 若用c(单位:元)表示应收取的费用, 具体算法步骤如下: S1 输入t; S2 若t≤3,则c←5, S3 输出c. t表示住户的人口数,则 否则c←5+1.2(t-3); N Y 输入t 输出c t≤3 c←5 c←5+1.2(t-3) 条件语句的作用 在程序执行过程中,根据判断是否满足约定的条件而决定是否需要转换到何处去。需要计算机按条件进行分析、比较、判断,并按判断后的不同情况进行不同的处理。 【例题解析】 〖例1〗:编写程序,输入一元二次方程ax2+bx+c=0的系数,输出它的实数根。 算法分析: 一元二次方程的根有三种不同情况: 设判别式△=b2-4ac (1)当△0时,一元二次方程有两个不等的实数根. (2)当△=0时,一元二次方程有两个相等的实数根. (3)当△0时,一元二次方程没有实数根. 【程序框图】 输入a,b,c 2 1 是 开始 △=b2-4ac △≥0? 原方程无实根 2 结束 否 1 △=0? 输出p 是 否 x1=p+q x2=p-q 输出x1,x2 【程序】 INPUT “ a,b,c =”;a,b,c d=b*b-4*a*c IF d=0 THEN p=-b/(2*a) q=SQR(d)/(2*a) IF d=0 THEN PRINT “One real root:”;p ELSE x1=p+q x2=p-q PRINT “Two real roots:”;x1,x2 END IF ELSE PRINT “No real root!” END IF END 是 开始 △=b2-4ac △≥0? 原方程无实根 否 结束 △=0? 输出p 是 否 x1=p+q x2=p-q 输出x1,x2 输入a,b,c 〖例2〗:编写程序,使得任意输入的3个整数按从大到小的顺序输出。 算法分析:用a,b,c表示输入的3个整数;为了节约变量,把它们重新排列后,仍用a,b,c表示,并使a≥b≥c.具体操作步骤如下。 第一步:输入3个整数a,b,c. 第二步:将a与b比较,并把小者赋给b,大者赋给a. 第三步:将a与c比较. 并把小者赋给c,大者赋给a,此时a已是三者中最大的。 第四步:将b与c比较,并把小者赋给c,大者赋给b,此时a,b,c已按从大到小的顺序排列好。 第五步:按顺序输出a,b,c. c=b b=t b=t c=t a=c 【程序框图】 开始 输入a,b,c ba? 是 t=a a=b 否 ca? 是 t=a 否 cb? t=c 是 否 输出a,b,c 交换a,b的值 【程序】 INPUT “a,b,c =”;a,b,c IF ba THEN t=a a=b b=t END IF IF ca THEN t=a a=c c=t END IF IF cb THEN t=b b=c
显示全部
相似文档