《条件语句》课件1.ppt_第1页
《条件语句》课件1.ppt_第2页
《条件语句》课件1.ppt_第3页
《条件语句》课件1.ppt_第4页
《条件语句》课件1.ppt_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第一章 算法初步 1.2.2 条件语句,复习回顾,输入语句,INPUT “提示内容”;变量,输出语句,PRINT “提示内容”;表达式,赋值语句,变量=表达式,INPUT “提示内容”;变量,PRINT “提示内容”; 表达式,变量表达式,可对程序中 的变量赋值,可输出表达式的值,计算,可对程序中的变量赋值,计算,(1)提示内容和它后面 的“;”可以省略,(2)一个语句可以给多个变 量赋值,中间用“,”分隔,(3)无计算功能,(1)表达式可以是变量, 计算公式,或系统信息,(2)一个语句可以输入多个表达式,中间用“,”分隔,(3)有计算功能,(1)“=”的右侧必须是表达式,左侧必须是变量,(2

2、)一个语句只能给一个变量赋,(3)有计算功能,注意:赋值号左边只能是变量名字,而不是表达式.,问题1:下列的赋值形式正确吗?为什么?,例如: x+y=2+3 2=x,问题2:在数学中x=y与y=x的意义是一样的,那么在赋值语句中一样吗?,注意:赋值号左右不能对换.赋值语句是将赋值号右边的表达式的值赋给赋值号左边的变量.,赋值号与数学中的等号意义不同: Y=X,表示用X的值替代变量Y原先的取值. X=Y,表示用Y的值替代变量X原先的取值. 所以“Y=X与 X=Y”的含义运行结果是不同的.,注意:不能利用赋值语句进行代数的演算(如化简、因式分解、解方程等) 例如:x2+10 x+16=0 (x+8

3、)(x+2)=0 X=-8,x=-2 y=x2-1=(x-1)(x+1),这是不能实现的,问题3:我们知道a=a+1在数学中是不成立的,但在赋值语句中成立吗?为什么?,答: 在赋值语句中是成立的,意思是将a的原值加1在赋给a,即a的值增加1.如果多次给一个变量赋值,则该变量的值取最后赋予的那个值.,数学符号与程序符号的对比,条件结构-在一个算法中,经常会遇到一些条件的判断,算法的流向根据条件是否成立有不同的流向.条件结构就是处理这种过程的结构.,步骤A,满足条件?,步骤B,是,否,步骤A,满足条件?,是,否,复习:,条件语句: 算法中的条件结构是由条件语句来表达的,是处理条件分支逻辑结构的算法

4、语句.,1、条件语句的一般格式有两种:,(1) IFTHEN语句 :,IF 条件 THEN 语句体 END IF,计算机执行这种形式的条件语句时,也是首先对IF后的条件进行判断,如果条件符合,就执行THEN后的语句体,否则执行END IF 之后的语句.,步骤A,满足条件?,是,否,(2) IFTHENELSE语句:,IF 条件 THEN 语句体1 ELSE 语句体2 END IF,步骤A,满足条件?,步骤B,是,否,当计算机执行上述语句时,首先对IF后的条件进行判断,如果条件符合,就执行THEN后的语句体1,否则执行ELSE后的语句体2.,IF 条件 THEN 语句体1 ELSE 语句体2 E

5、ND IF,IF 条件 THEN 语句体 END IF,(单分支条件结构),(双分支条件结构),例1、编写程序,输入一个x的值,要求输出它的绝对值.,是,程序框图:,开始,输入x,x0?,输出x,否,输出x,结束,INPUT x IF x= 0 THEN PRINT x ELSE PRINT -x END IF END,程序,INPUT x IF x0 THEN x=-x END IF PRINT x END,随堂练习,1. INPUT “x= ”; x IF x3 THEN y=x * x ELSE y=2 * x END IF PRINT “y=”; y END 若输入4,输出结果是,补充

6、完整下面用来求任意一个实数x的绝对值的程序 INPUT “x= ”; x _ PRINT “|x|= ”; x ELSE PRINT “|x|= ”; -x _ END,16,IF X=0 THEN,END IF,3. 根据下面的算法和程序框图写出相应的程序.,开始,输入a,b,ab?,输出b-a,输出a-b,结束,INPUT “a=”; a,END IF,INPUT “b=”; b,IF ab THEN PRINT a-b,ELSE PRINT b-a,END,随堂练习,例2.已知y= ,编写程序, 输入自变量的值,输出相应的函数值.,结束,x0?,否,y=x+1,输出y,y=-2x+1,是

7、,开始,输入x,IF x0 THEN,y=(-2)*x+1,ELSE,y=x+1,PRINT y,END IF,INPUT x,END,开始,输入a,b,c,0?,= 0?,结束,输出x=p,原方程无实 数根,N,Y,Y,N,例3.编写程序,输入 一元二次方程,的系数,输出它的实数根,开始,输入a,b,c,0?,= 0?,结束,输出p,原方程无 实数根,N,Y,Y,N,INPUT 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 “x1= x2=”;p ELSE PRINT “x1, x2=”

8、;p-q, p+q END IF ELSE PRINT “No real root!” END IF END,例4.编写程序,使得任意输入3个整数按大到小的顺 序输出.,算法分析:,算法思想:3个数两两比较,确定大小.按a、b、c输入,要按a、b、c输出,关键要找到最大值,将它赋值给a,中值赋给b,最小值赋给c.,第一步 输入3个整数a、b、c,第二步 将a与b比较,并把小者赋给b,大的赋给a;,第三步 将a与c比较,并把小者赋给c,大的赋给a,第四步 将b与c比较,并把小者赋给c,大的赋给b,第五步 按顺序输出a,b,c,开始,输入a,b,c,ba?,ca?,cb?,输出a,b,c,结束,t

9、=a,a=b,b=t,t=a,a=c,c=t,c=t,b=c,t=b,Y,N,Y,N,N,Y,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 c=t END IF PRINT a,b,c END,程序:,巩固练习,1.右边给出的是用条件语句编写的一个程序,根据该程序回答:,INPUT x IF x3 THEN y=x*x-1 ELSE y=0 END IF END IF PRINT y END,(1)若输入5,则输出结果是 ; (2)若输入2,则输出结果是 ;,24,4,巩固练习,2. 下列程序运行后的结果是( ) a=2 b=3 IF ab THEN t=a a=b b=t END IF PRINT “a=”; a PRINT “b=”; b END,A. a=2,b=3 B. a=

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论