高中数学算法赋值、输入和输出语句.ppt_第1页
高中数学算法赋值、输入和输出语句.ppt_第2页
高中数学算法赋值、输入和输出语句.ppt_第3页
高中数学算法赋值、输入和输出语句.ppt_第4页
高中数学算法赋值、输入和输出语句.ppt_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

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

文档简介

1.2.1 赋值、输入和输出语句,1.2基本算法语句,计算机常用的程序设计语言:BASIC、C/C+、 Scilab、VB、ASP、Java等等。,基本算法语句,算法的三种基本逻辑结构:顺序结构,条件结构和循环结构。,各种程序语言都包含了下列基本的算法语句:,一、赋值语句(P16),在表述一个算法时,经常要引入变量,并赋给该变量一个值,用来表明赋给某一个变量一个具体的确定值的语句叫做赋值语句.,赋值语句的一般格式是: 变量名=表达式,注意:,(1)赋值语句的作用是将表达式所代表的值赋给变量.它实质上是先将赋值号“=”右边表达式的值计算出来,然后把该值赋给“=”左边的变量,使该变量的值等于表达式的值。,例如:“x=5”的意思是讲数值5赋给变量x.,“x=5”的意思是讲数值5等于变量x.,(2)赋值语句中的“=”称作赋值号,而不是“等号”,例如:a=b,表示将b的值赋给a,而不是说a和b相等!,(3)格式中右边“表达式”可以是一个数值、常量或算式,如果“表达式”是一个算式,赋值语句的作用是先计算出“=”右边表达式的值,然后将该值赋给“= ”左边的变量. 如x=32+4*52,a=b+c等.,运算符号:+,-,*,/, 表达式中的括号一律用( ),写成“%pi”,|x|写成abs(x),x2写成x*x或x2,标准函数的自变量放在( )内,如sin(x), 其他见P42,赋值号的左右两边不能对换,赋值语句是将赋值号右边表达式的值赋给赋值号左边的变量,例如a=b表示用b的值代替变量a原来的值,不能写为b=a,因为b=a表示用a的值代替变量b的值.,(4)赋值语句左边只能是变量名字,而不是表达式. 如x=5是对的,5=x是错误的;a+b=c也是错误的,而c=a+b是正确的。,(5)不能利用赋值语句进行代数式的演算(如化简,因式分解等). 如y=x21=(x+1)(x1)这是不能实现的,在赋值语句中赋值号右边的表达式中的每一个“变量”都必须事先赋给确定的值,在一个赋值语句中只能给一个变量赋值,不能出现两个或多个“= ”。 如a=b=5是错误的;,(6)对于一个变量可以多次赋值,如a=5,a=7,a=9,则执行时a的值是9;变量的值也可以多次赋值, 如A=5,B=A,C=A,最后执行时C的值仍然是5;,(7)赋值号与数学中的等号的意义是不同的,赋值号左边的变量如果原来没有值,则执行赋值语句后,获得一个值;如果已有值,则执行该语句,以赋值号右边表达式的值代替该变量原来的值,即将原值“冲掉”。如N=N+1,在数学中是不成立的,但在赋值语句中,意思是将N+1的原值加1再赋给N,此时左边N的值就是原来N的值加1,如N原来是7,则N=N+1后,N的值变为8。,思考:,例1. 判断下列赋值语句是否正确: (1)4=m; (2)x+y=10; (3)A=B=2; (4)N=N+1.,解:(1)错误,(2)错误; (3)错误;(4)正确.,在Scilab 语言中,可以直接赋值并计算:,例如计算三个数的平均值,可以在窗口中输入:,a=5; b=7; c=9; aver=(a+b+c)/3 aver= 7,注意:语句最后有没有“;”是不一样的. 有“;”表示不显示结果.,二、输入语句,在某些算法中,变量的初值要根据情况经常的改变,一般我们把程序和初始数据分开,每次算题时,即使初始数据改变,也不必改变程序部分,只要每次程序运行时,输入相应的数据即可,这个过程在程序语言中,用输入语言来控制.,输入语句的一般格式: 变量=input(“提示内容”),其中input号左边是指要输入数值的变量名称,括号内的提示信息的作用是在程序运行后,在屏幕上输出或显示一些与该变量有关的信息,是对变量的一种解释,目的是为了让程序执行者更方便、更精确地输入相应变量的值;,变量=input(“提示内容”),我们要计算任一个学生的语文,数学和外语三门考试的平均成绩,就要输入这个学生三门课的成绩,在Scilab文本编辑器中写出如下程序:,a=input(“Chinese”); b= input(“math”); c= input(“foreign language”); aver=(a+b+c)/3,程序中分别请求输入语文,数学,英语成绩并分别赋值给a,b,c,并把(a+b+c)/3的值赋给aver.把程序保存在一个文件中,点击打开时立即会在Scilab截面中运行:,chinese 这时输入该生的语文成绩如90,点“Enter”,界面出现:,math 这时输入该生的数学成绩如80,点“Enter”,界面出现:,foreign language 这时输入该生的外语成绩如79,点“Enter”,界面出现:,aver=83,在Scilab中,还有“read”等其他输入语句,在其他各种语言程序中,一般都有自己的输入控制语言,它们的作用是相同的,只是每种语言的控制代码和表现形式不同.,输入语句要求输入的值只能是具体的常数,不能是函数,变量或者表达式,例如20*5, 32/4等都不行;另外输入语句可以输入单个或者多个字符,例如:x=input(“I am a student”); x=input(“what is your name?”)等等.,几点说明:,输入语句中a=input(“Chinese”)中,真正起作用的是a=input( ),它将键盘输入的数值赋给a,括号中的chinese仅仅是提示作用,提醒用户输入的是语文成绩.,例1. 鸡兔同笼问题的一个算法及程序.(P18),S1: 输入鸡兔头总数量M S2: 输入鸡兔腿的总数N,开始,B=MA,结束,输出A,B,输入M、N,A=(4*MN)/2,S3: 鸡的数量,S4: 兔的数量B=MA,S5: 输出A,B,M=input(“How many heads”); N=input(“How many legs”); A=(4*MN)/2; B=MA; A B,三、输出语句,任何求解问题的算法,都要把求解的结果输出,因此任何的程序语言也都有自己的输出语句来控制输出。不同的程序语言都有自己的输出语句和表现形式,但功能是一样的,就是以某种形式把求解结果输出出来.以Scilab为例,有各种输出语句,如print, write, format, printf, disp.,输出语言一般格式: print(%io(2),表达式),例3: 一个算法是,用Scilab中的rand( )函数,首先生成一个01之间的随机数并把它赋值给变量a, 再把3赋值给变量b, 把a+b赋值给变量c, 最后把它们都输出到屏幕上. 这个算法用Scilab程序写出,并用print(%io(2),a,b,c)语句控制输出,运行界面内写出程序如下:,a=rand(); b=3; c=a+b; print(%io(2),a,b,c) c= 3.7560439 b= 3 a= .7560439,print(%io(2),表达式)中的表达式指程序要输出的数据,输出语句可以输出常量,变量或表达式的值. 例如print(%io(2),B), print(%io(2),4*3)等.,print(%io(2),a,b,c)在屏幕上输出的顺序是c, b, a.,print(%io(2),a,b,c)中的io表示inputoutput(输入输出).,几点说明:,例4. 用描点法作函数y=2x3+3x212x+15的图象时,需要求出自变量与函数的一组对应值。编写程序,分别计算当x=1,2,3,0,1,2,3时的函数值.,解:我们用Scilab语言来描述:,x=input(“x=”); y=2*x3+3*x212*x+15; Print(%io(2),y,x),画出程序框图,开始,结束,x3,y=2x3+3x212x+15,x=x+1,x=-3,是,否,输出y,例5. 编写一个程序,要求输入两个正数a和b的值,输出ab与ba的值.,解:可以利用Scilab语句输入两个正数a,b,然后将ab与ba的值分别赋给两个变量,然后输出这两个变量的值即可;程序为:,a= input(“a=”); b= input(“b=”); A=ab; B=ba; Print(%io(2), A) Print(%io(2), B),例6. 读用Scilab语句编写的程序,根据程序画出程序框图。,x= input(“x=”) y= input(“y=”) Print(%io(2),x/4) Print(%io(2),2*y) x=x+2; y=y1; Print(%io(2),x) Print(%io(2),y),开始,输入x,y,,x=x+2, y=y1,结束,输出x, y,输出x/4,2*y,,练习题,1:写出下列算法执行后的结果.,a=2; a=4; a=a+a; a,(1),(2),答案:8,答案:5, 4, 2,a=2; b=3; c=a+b; b=a+cb; print(%io(2),a,b,c),作业:金榜综合检测5,2. 程序: F=INPUT (“请输入华氏温度”); C=(F32)*5/9; PRINT(%

温馨提示

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

评论

0/150

提交评论