资源描述
,欢迎进入数学课堂,赋值语句与输入、输出语句,已知函数y,请设计其函数值的算法,试题评析:,右侧的算法是否正确?如果不正确,问题出在何处,应该如何修改?,S2如果x0,则y,否则转S3;,S2如果x0,则y,转S4;,不可以忽视算法执行的顺序性,选择结构只对本语句有效,如果不使用“转”,或“结束”,则下一条语句必将继续执行.,计算机完成任何一项任务都需要算法,但是,用自然语言或程序框图描述的算法,计算机是无法“看得懂,听得见”的.因此还需要将算法用计算机能够理解的程序设计语言(programminglanguage)翻译成计算机程序.,程序设计语言有很多种,如BASIC,Foxbase,C语言,C+,J+,VB等.各种语言的语法存在比较大的区别,因此我们教材使用了一种介于自然语言和计算机语言之间的文字和符号,来表表示算法.这种文字和符号,称为伪代码(pseudocode).,为了能更好的检验我们的算法,我们还要将伪代码转换为真正的程序,我们使用的工具是一种称为VBA(VisualBasicforApplication)的程序设计语言,它可以看成是VB程序设计语言的一种简化版本.,赋值语句:,值语句伪代码的一般格式:变量表达式(公式或运算式)或变量,注意:赋值号左边只能是变量,不能是表达式或常数;赋值号左右两边不能调换;赋值号左右两边可以出现同一个变量,但值可能不相同;赋值号左右两边的量应该是同类型的,如:“xy”表示:将y的值赋给x,10 x320y(x2+x/3)(1),伪代码:,虚线边框,引例:用伪代码写出求时多项式的值的算法,输入语句:,输入语句伪代码的一般格式:Reada,b,输入语句也是赋值语句,只不过是从键盘等输入设备上接受数据,而且可以批量接受数据,输出语句:,输出语句伪代码的一般格式:Printa,b,注意使用输出语句输出字符串时,字符内容应加在括号内,例1.“鸡兔同笼”是我国隋朝时期的数学著作孙子算经中的一个有趣而具有深远影响的题目:“今有雉兔同笼,上有三十五头,下有九十四足问雉兔各几何”,设有x只鸡,y只兔,则,下面我们设计一个解二元一次方程组的通用算法,数学应用:,自然语言:,伪代码:,流程图:,Sub解二元一次方程组()Dima1,b1,c1,a2,b2,c2,x,yAsSinglea1=InputBox(输入a1,输入二元一次方程组的系数)b1=InputBox(输入b1,输入二元一次方程组的系数)c1=InputBox(输入c1,输入二元一次方程组的系数)a2=InputBox(输入a2,输入二元一次方程组的系数)b2=InputBox(输入b2,输入二元一次方程组的系数)c2=InputBox(输入c2,输入二元一次方程组的系数)x=(b2*c1-b1*c2)/(a1*b2-a2*b1)y=(a1*c2-a2*c1)/(a1*b2-a2*b1)MsgBox方程组的解为:x=&x&,y=&yEndSub,在word工具菜单的宏子菜单下,打开VBA编辑器,在VBA编辑器中输入代码,点击执行程序,输入方程组未知数系数,输出方程组的解,例2.求多项式函数,当x5时的函数值?,我们一共做了12+34515次乘法运算,5次加法运算.,一共做了4+5=9次乘法运算,5次加法运算.,有没有更简单的算法?,秦九韶算法,其算法特点是:通过一次式的反复计算,逐步得出高次多项式的值;对于一个次多项式,只要做n次乘法和n次加法,计算机的一个重要特点是运算速度很快,但即便如此,算法好坏的一个重要标志仍然是运算的次数如果一个算法理论上需要超出计算机允许范围内的运算次数,那么这样的算法只能是一个理论算法据说国际象棋一盘棋的可能下法有10100种,比整个宇宙中的原子还多因此,用枚举法穷尽国际象棋所有可能下法的算法永远不可能实现的,课堂小结:,、赋值语句:,值语句伪代码的一般格式:变量表达式(公式或运算式)或变量,注意:赋值号左边只能是变量,不能是表达式或常数;赋值号左右两边不能调换;赋值号左右两边可以出现同一个变量,但值可能不相同;赋值号左右两边的量应该是同类型的,如:“xy”表示:将y的值赋给x,输入语句:,输入语句伪代码的一般格式:Reada,b,输入语句也是赋值语句,只不过是从键盘等输入设备上接受数据,而且可以批量接受数据,输出语句:,输出语句伪代码的一般格式:Printa,b,注意使用输出语句输出字符串时,字符内容应加在括号内,课后作业:,课本P1练习No.、.,同学们,来学校和回家的路上要注意安全,同学们,来学校和回家的路上要注意安全,
展开阅读全文