人教版高中数学必修三第3讲:基本算法语句(学生版)
最新人教版高中数学必修3第一章基本算法语句
1.2 基本算法语句一、本节知识结构二、教学重点与难点重点:通过实例,使学生理解5种基本的算法语句的表示方法、结构和用法,进一步体会算法的基本思想.难点:将某个具体问题的程序框图转换为程序语句.三、编写意图与教学建议通过前面一节的学习,学生了解了算法的含义,学习了用自然语言和程序框图表示算法的方法.本节将在此基础上,进一步学习如何用程序设计语言(PL,programming language)来表示算法.为了向学生说明用程序设计语言表示算法的目的,可以参考下面两个方面:1.用程序设计语言来描述算法的必要性:一是为了解决某个具体问题,我们设计的算法包含大量烦琐的计算、复杂的作图等操作,这时计算机强大的数据处理功能可以帮助我们轻松地完成这些重复性的机械步骤;二是“计算机解决任何问题都要依赖算法”,计算机解决问题的过程就是一个对算法的执行过程,但这个算法必须是用计算机能够理解的语言描述的,而程序设计语言基本上就是计算机能够理解的语言.2.无论是用自然语言描述算法,还是用程序框图和程序语句表示算法,都是对算法的一种形式化的表示.但是写出算法,不等于已经实现了算法.在计算机上运行程序,就是对算法的一种实现.而我们的重点在于学习几种基本的算法语句,并用它们来表示算法,而不是学习上机运行和调试程序.程序设计语言经历了从机器语言、汇编语言到高级语言的发展历程.三种语言都是用于描述算法的,从这个角度来讲,它们之间并没有本质的区别.高级语言比较接近人类的自然语言,它的语句多由一些简单的英文单词或缩写组成,可直接识别各种复杂的科学表达式.高级语言的种类很多,目前较为通用的有BASIC,C,COBOL,Delphi等等.由于BASIC语言具有简单、易学等特点,我们使用了类似BASIC的语句形式和语法规则来介绍算法语句.教师可以参考有关介绍BASIC或QBASIC(BASIC语言的一种)的书籍.同时,教师还可以告诉学生,程序设计语言只是将算法转换为程序的工具,而算法才是解决问题的关键.本节的教学目的之一就是通过学习算法语句,帮助学生进一步体会算法的思想.教科书第13页边空中的插图,是为了帮助学生理解算法与计算机程序之间的对应关系,即:正像一个算法是求解特定问题的步骤的有限序列一样,一个计算机程序是让计算机完成某项任务而设计的一系列程序语句的有序集合.我们可以把程序看成在某种程序设计语言中对算法的具体实现.任何高级程序语言都包含输入语句、输出语句、赋值语句、条件语句和循环语句5种基本语句.这5种基本算法语句与算法的三种基本结构基本上是相互对应的.为了有利于学生在学习本节的同时,进一步理解算法的基本逻辑结构,我们将本节内容分成了3个小节,以体现下面的对应关系:。
人教课标版高中数学必修三《算法案例(第3课时)》教案(1)-新版
⼈教课标版⾼中数学必修三《算法案例(第3课时)》教案(1)-新版1.3 算法案例第3课时⼀、教学⽬标 1.核⼼素养在学习古代数学家解决数学问题的⽅法的过程中培养严谨的逻辑思维能⼒,在利⽤算法解决数学问题的过程中培养理性的精神和动⼿实践的能⼒. 2.学习⽬标(1)1.3.3.1理解进位制的概念,掌握各种进位制与⼗进制之间的转换规律.(2)1.3.3.2掌握⼗进位制转化为各种进位制的除k 余法. 3.学习重点各种进位制与⼗进制之间的转换规律. 4.学习难点不同进位制之间的转化规律及其思想⼆、教学设计(⼀)课前设计 1.预习任务任务1阅读教材P40-P45,思考:各种进位制与⼗进制之间转换的规律是什么?任务2你可以熟练的进⾏各进位制之间的转换吗? 2.预习⾃测1.在2进制中,0+0,0+1,1+0,1+1的值分别是多少?【解析】:分别是0,1,1,10 2.把⼆进制数()2110011化为⼗进制数【解析】:()=?+?+?+?+?+?=+++=543210211001112120202121232162151(⼆)课堂设计1.知识回顾(1)⽣活中常见的进位制有哪些(例如时间、钱等)(2)计算机中的2进制和通常的10进制怎么进⾏转换(3)⾮10的两种不同进制之间怎么进⾏转换 2.问题探究问题探究⼀认识进位制,将⼗进制数转化为k 进制数●活动⼀什么是n 进位制?我们常见的数字都是⼗进制的,但是并不是⽣活中的每⼀种数字都是⼗进制的.⽐如时间和⾓度的单位⽤六⼗进位制,电⼦计算机⽤的是⼆进制.那么什么是进位制?不同的进位制之间⼜⼜什么联系呢?进位制是⼀种记数⽅式,⽤有限的数字在不同的位置表⽰不同的数值.可使⽤数字符号的个数称为基数,基数为n ,即可称n 进位制,简称n 进制.现在最常⽤的是⼗进制,通常使⽤10个阿拉伯数字0-9进⾏记数.对于任何⼀个数,我们可以⽤不同的进位制来表⽰.⽐如:⼗进制数57,可以⽤⼆进制表⽰为111001,也可以⽤⼋进制表⽰为71、⽤⼗六进制表⽰为39,它们所代表的数值都是⼀样的.表⽰各种进位制数⼀般在数字右下脚加注来表⽰,如()2110011表⽰⼆进制数,(5)34表⽰5进制数.●活动⼆如何将10进制数转化为2进制数?解:根据⼆进制数满⼆进⼀的原则,可以⽤2连续去除89或所得商,然后去余数. 具体的计算⽅法如下:=?+=?+=?+=?+=?+892441442220222110112515221()(((())))=+++++=?+?+?+?+?+?+?=654321028922222211001120212120202121011001 这种算法叫做除2取余法,还可以⽤下⾯的除法算式表⽰:把上式中的各步所得的余数从下到上排列即可得到89=1011001(2)●活动三如何将10进制数转化为k进制数?上述⽅法可以推⼴为把⼗进制化为k进制数的算法,这种算法成为除k取余法. ⼗进制数化为k进制数(除k取余法)的步骤:1.除:把⼗进制数连续去除以k,直到商为0为⽌,同时将各步的余数写出2.取余:将各步所得的余数倒叙写出,即为所求的k进制数3.标基数:写出k进制数后将基数k⽤括号括起来标在右下⾓例1.将⼗进制数458分别转化为四进制数和六进制数.解:算式如下图,则458=13022(4)=2042(6)问题探究⼆不同进制数相互转换●活动⼀如何将10进制数与k进制数进⾏相互转换?⼆进制数110 011(2)化为⼗进制数是什么数?110 011(2)=1×25+1×24+0×23+0×22+1×21+1×20=32+16+2+1=51.那么如何将⼀个k进制数转换为⼗进制数?将k进制数a n a n-1…a1a0(k)化为⼗进制的⽅法:把k进制数a n a n-1…a1a0(k)写成各数位上的数字与基数k的幂的乘积之和的形式,然后计算出结果即为对应的⼗进制数.这样我们就可以进⾏10进制数与k进制数进⾏相互转换●活动⼆如何将⾮10的不同进制数进⾏相互转换?进制的数转化为10进制数后再把10进制的⼗进制是连接其他进制的桥梁.把k1进制数,各个进制数之间就能实现互相转换.数转化为k2例2.1 011 001(2)=______(10)=______(5).解:89,324 ⾸先将1011001(2) 化为⼗进制数为1×26+0+1×24+1×23+0+0+1×20=89,再将89化成五进制数:89除以5的商是17,余数为4,17除以5的商是3,余数为2,所以五进制数为324.3.课堂总结【知识梳理】(1)k进制化成⼗进制,幂积求和法(2)⼗进制化成k进制,除k取余法进制的数转化为10进制数后再把10进制的数转(3)不同进制之间转换:把k1化为k进制数2【重难点突破】(1)进位制之间的转换⽅法:k进制化成⼗进制,幂积求和法;⼗进制化成k 进制,除k取余法.(2)把⼀个⾮⼗进制数转化为另⼀种⾮⼗进制数,通常是把这个数先转化为⼗进制数,然后再利⽤除k取余法,把⼗进制数转化为k进制数.⽽在使⽤除k 取余法时要注意以下⼏点:1.必须除到所得的商是0为⽌;2.各步所得的余数必须从下到上排列;3.切记在所求数的右下⾓标明基数4.随堂检测1.下列各进制数中值最⼩的是( )A.85(9)B.210(6)C.1 000(4)D.111 111(2)【解析】:D 由进位制的知识易得,故选D.2.把189化为三进制数,则末位数是( )A.0 B.1 C.2 D.3【解析】:A将189除以3得余数为0,所以189化为三进制数的末位数为0. 故选A.3.已知⼀个k进制的数132与⼗进制的数30相等,那么k等于( )A.7或4 B.-7C.4 D.都不对【解析】:C132(k)=1×k2+3×k+2=k2+3k+2,∴k2+3k+2=30,即k2+3k-28=0,解得k=4或k=-7(舍去).故选C.4.四位⼆进制数能表⽰的最⼤⼗进制数是( )A.4 B.64 C.255 D.15【解析】:D由⼆进制数化为⼗进制数的过程可知,当四位⼆进制数为1 111时表⽰的⼗进制数最⼤,此时,1 111(2)=15.故选D5.七进制数中各个数位上的数字只能是______中的⼀个.【解析】:0、1、2、3、4、5、6“满⼏进⼀”就是⼏进制.∵是七进制.∴满七进⼀,根本不可能出现7或⽐7⼤的数字,所以各个数位上的数字只能是0、1、2、3、4、5、6中的⼀个.6.已知三个数12(16),25(7),33(4),将它们按由⼩到⼤的顺序排列为________.【解析】:33(4)<12(16)<25(7)将三个数都化为⼗进制数.12(16)=1×16+2=18,25(7)=2×7+5=19,33(4)=3×4+3=15,∴33(4)<12(16)<25(7).(三)课后作业基础型⾃主突破1.⼆进制数111.11(2)转换成⼗进制数是( )A.7.3 B.7.5 C.7.75 D.7.125【解析】:C 由题意知⼆进制对应的⼗进制是:1×22+1×21+1×20+1×2-1+1×2-2=4+2+1+0.5+0.25=7.75. 故选A2.将⼆进制110 101(2)转化为⼗进制为( )A.106 B.53 C.55 D.108【解析】:B110 101(2)=1+1×22+1×24+1×25=53. 故选B3.下列与⼆进制数1 001 101(2)相等的是( )A.115(8)B.113(8)C.114(8)D.116(8)【解析】:A 先化为⼗进制数:1 001 101(2)=1×26+1×23+1×22+1×20=77,再化为⼋进制数.所以77=115(8),1 001 101(2)=115(8)故选A.4.下列各数中,与1 010(4)相等的数是( )A.76(9)B.103(8)C.2 111(3)D.1 000 100(2)【解析】:D 1 010(4)=1×43+1×4=68.因为76(9)=7×9+6=69;103(8)=1×82+3=67;2111(3)=2×33+1×32+1×3+1=67;1000100(2)=1×26+1×22=68,所以1 010(4)=1 000 100(2)故选D..5.⼀个k进制的三位数与某六进制的⼆位数等值,则k不可能是( )A.3 B.4 C.5 D.7【解析】:D k进制的最⼩三位数为k2,六进制的最⼤⼆位数为5×6+5=35,由k2≤35得0…a1a0(k)表⽰⼀个k进制数,若21(k)=9,则321(k)在⼗进制中所表⽰的6.记anan-1数为( )A.86 B.57 C.34 D.17【解析】:B 由已知中21(k)=9,求出k值,进⽽利⽤累加权重法,可得答案.若21(k)=9,则2k+1=9,解得k=4,故321(k)=321(4)在+进制中所表⽰的数为:3×42+2×4+1=57. 故选B能⼒型师⽣共研7.已知1 0b1(2)=a02(3),求数字a,b的值.【解析】:a=1,b=1 ∵1 0b1(2)=1×23+b×2+1=2b+9,a02(3)=a×32+2=9a+2,∴2b+9=9a+2,即9a-2b=7.∵a∈{1,2},b∈{0,1},∴当a=1时,b=1符合题意,当a=2时,b=112不合题意,∴a=1,b=1.8.已知44(k)=36,把67(k)转化为⼗进制数为( )A.8 B.55 C.56 D.62【解析】:B 由题意得,36=4×k1+4×k0,所以k=8.则67(k)=67(8)=6×81+7×80=55. 故选B9.古时候,当边境有敌⼈来犯时,守边的官兵通过在烽⽕台上举⽕向国内报告,如图,烽⽕台上点⽕,表⽰数字1,不点⽕表⽰数字0,约定⼆进制数对应的⼗进制的单位是1 000,请你计算⼀下,这组烽⽕台表⽰约有多少敌⼈⼊侵?【解析】:27 000 由图可知从左到右的五个烽⽕台,表⽰⼆进制数的⾃左到右五个数位,依题意知这组烽⽕台表⽰的⼆进制数是11 011,改写为⼗进制为:11 011(2)=1×24+1×23+0×22+1×21+1×20=16+8+2+1=27(10).⼜27×1 000=27 000,所以这组烽⽕台表⽰边境约有27 000个敌⼈来犯.探究型多维突破10.分别⽤算法步骤、程序框图、程序语句表⽰把k进制数a(共有n位数)转化成⼗进制数b.【解析】:算法步骤:第⼀步,输⼊a,k,n的值.第⼆步,赋值b=0,i=1.第三步,b=b+a i·k i-1,i=i+1.第四步,判断i>n是否成⽴.若是,则执⾏第五步;否则,返回第三步.第五步,输出b的值.程序框图:程序语句:11.若10y1(2)=x02(3),求数字x,y的值及与此两数等值的⼗进制数.【解析】:x=y=1,11∵10y1(2)=x02(3),∴1×23+0×22+y×2+1=x×32+0×3+2,将上式整理得9x-2y=7,由进位制的性质知,x∈{1,2},y∈{0,1},当y=0时,x=(舍),当y=1时,x=1.∴x=y=1,已知数为102(3)=1 011(2),与它们相等的⼗进制数为1×32+0×3+2=11.⾃助餐1.在什么进位制中,⼗进位制数71记为47( )A.17 B.16 C.8 D.12【解析】:B 设为k进制,有:4k+7=71,从⽽可解得k=16.因此是16进制.故选B.2.把⼗进制数20化为⼆进制数为( )A.10 000(2)B.10 100(2)C.11 001(2)D.10 001(2)【解析】:B 利⽤除2取余数可得.故选B3.在⼋进制中12(8)+7(8)=21(8),则12(8)×7(8)的值为( )A.104(8)B.106(8)C.70(8)D.74(8)【解析】:B 12(8)=1×81+2×80=10(10),7(8)=7×80=7(10),12(8)×7(8)=70(10).故70(10)=106(8).即12(8)×7(8)=106(8).故选B4.将四位⼋进制数中的最⼩数转化为六进制数为( )A.2 120 B.3 120 C.2 212 D.4 212【解析】:C 四位⼋进制中的最⼩数为1 000(8).所以1 000(8)=1×83=512.再将512除以6取余得512=2 212(6).故选C5.两个⼆进制数101(2)与110(2)的和⽤⼗进制数表⽰为( )A.12 B.11 C.10 D.9【解析】:B101(2)=1×22+0×21+1×20=5,110(2)=1×22+1×21+0×20=6,5+6=11.故选B6.在计算机的运⾏过程中,常常要进⾏⼆进制数与⼗进制数的转换与计算.如⼗进制数8转换成⼆进制数是1 000,记作8(10)=1 000(2);⼆进制数111转换成⼗请进制数是7,记作111(2)=7(10)等.⼆进制的四则运算,如11(2)+101(2)=1 000(2).计算:11(2)×111(2)=________,10 101(2)+1 111(2)=________.【解析】:10 101(2),100 100(2)由题可知,在⼆进制数中的运算规律是“满⼆进⼀”,∴11(2)×111(2)=10 101(2),10 101(2)+1 111(2)=100 100(2).7.1 101(2)+1 011(2)=__________(⽤⼆进制数表⽰).【解析】:11 000(2)1 101(2)=1×23+1×22+1=13;1 011(2)=1×23+1×2+1=11,则1101(2)+1011(2)=24.即24=11 000(2).。
(完整版)人教版高中数学必修3各章知识点总结,推荐文档
高中数学必修3知识点第一章算法初步i.i.i 算法的概念算法的特点:(i)有限性:一个算法的步骤序列是有限的,必须在有限操作之后停止,不能是无限的^(2)确定性:算法中的每一步应该是确定的并且能有效地执行且得到确定的结果,而不应当是模棱两可.(3)顺序性与正确性:算法从初始步骤开始,分为若干明确的步骤,每一个步骤只能有一个确定的后继步骤,前一步是后一步的前提,只有执行完前一步才能进行下一步,并且每一步都准确无误,才能完成问题^(4)不唯一性:求解某一个问题的解法不一定是唯一的,对于一个问题可以有不同的算法^(5)普遍性:很多具体的问题,都可以设计合理的算法去解决,如心算、计算器计算都要经过有限、事先设计好的步骤加以解决.1.1.2 程序框图1、程序框图基本概念:(一)程序构图的概念:程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形。
一个程序框图包括以下几部分:表示相应操作的程序框;带箭头的流程线;程序框外必要文字说明。
(二)构成程序框的图形符号及其作用学习这部分知识的时候,要掌握各个图形的形状、作用及使用规则,画程序框图的规则如下:1、使用标准的图形符号。
2、框图一般按从上到下、从左到右的方向画。
3、除判断框外,大多数流程图符号只有一个进入点和一个退出点。
判断框具有超过一个退出点的唯一符号。
4、判断框分两大类,一类判断框“是”与“否”两分支的判断,而且有且仅有两个结果;另一类是多分支判断,有几种不同的结果。
5、在图形符号内描述的语言要非常简练清楚。
(三)、算法的三种基本逻辑结构:顺序结构、条件结构、循环结构。
1、顺序结构:顺序结构是最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行的,它是由若1个依次执行的处理步骤组成的,它是任何一个算法都离不开的一种基本算法结构。
顺序结构在程序框图中的体现就是用流程线将程序框自上而下地连接起来,按顺序执行算法步骤。
人教版数学必修三 3.1.2基本算法语句
A.
B.
C.
D.
4.执行下面的程序后,输出的结果是( ) A.1,3 B.4,1 C.4,﹣2 D.6,0
【解答】解:根据题中的伪代码,可
得以下4个步骤 第1步,将1的赋给a,3的赋给b; 第2步,将a+b的赋给a,可得此时的a 值为4; 第3步,将a﹣b的赋给b,得此时的b值 为1; 第4步,输出a,b的值 因此最后输出的a=4,b=1 故选:B 【点评】本题给出伪代码,求输出的a、 b之值,着重考查了赋值语句的理解、 伪代码的含义等知识,属于基础题.
【分析】先根据输出的结果推出循 环体执行的次数,再根据 s=1×12×11×10×9=11880得到程 序中UNTIL后面的“条件”. 【解答】解:因为输出的结果是 132,即s=1×12×11×10×9,需 执行4次, 则程序中UNTIL后面的“条件”应 为i<9. 故选D
3.执行如图的算法语句,则输出S为( )
其对应的程序框图如图所示.
(2)条件语句的简单格式 IF 条件 THEN 语句序列; END IF
其对应的框图如图.
计算机执行这种格式的条件语句时,先对表达式的 结果进行判断,若表达式结果为真,则执行表达式后面 的语句序列,否则直接跳过语句序列,执行 END IF 后的 其它语句.条件语句后必须用 END IF 结尾.
XX和X老师的第一节课
1
自我介绍
• 老师姓名/昵称: • 毕业院校: • 教学特点: • 教学经历: • 教学心得: • 辅导成绩:
* 展示老师风采的照片
2
算法初步
第二节
基本算法语句
知识归纳
1.输入语句 (1)输入语句的一般格式是: INPUT“提示内容”;变量 (2)输入语句的作用是实现算法的输入信息功能. (3)“提示内容”提示用户输入什么样的信息.
人教版高中数学必修三 算法案例(进位制)优质教案
第3课时案例3 进位制(一)导入新课情境导入在日常生活中,我们最熟悉、最常用的是十进制,据说这与古人曾以手指计数有关,爱好天文学的古人也曾经采用七进制、十二进制、六十进制,至今我们仍然使用一周七天、一年十二个月、一小时六十分的历法.今天我们来学习一下进位制.(二)推进新课、新知探究、提出问题(1)你都了解哪些进位制?(2)举出常见的进位制.(3)思考非十进制数转换为十进制数的转化方法.(4)思考十进制数转换成非十进制数及非十进制之间的转换方法.活动:先让学生思考或讨论后再回答,经教师提示、点拨,对回答正确的学生及时表扬,对回答不准确的学生提示引导考虑问题的思路.讨论结果:(1)进位制是人们为了计数和运算方便而约定的计数系统,约定满二进一,就是二进制;满十进一,就是十进制;满十二进一,就是十二进制;满六十进一,就是六十进制等等.也就是说:“满几进一”就是几进制,几进制的基数(都是大于1的整数)就是几.(2)在日常生活中,我们最熟悉、最常用的是十进制,据说这与古人曾以手指计数有关,爱好天文学的古人也曾经采用七进制、十二进制、六十进制,至今我们仍然使用一周七天、一年十二个月、一小时六十分的历法.(3)十进制使用0~9十个数字.计数时,几个数字排成一行,从右起,第一位是个位,个位上的数字是几,就表示几个一;第二位是十位,十位上的数字是几,就表示几个十;接着依次是百位、千位、万位……例如:十进制数3 721中的3表示3个千,7表示7个百,2表示2个十,1表示1个一.于是,我们得到下面的式子:3 721=3×103+7×102+2×101+1×100.与十进制类似,其他的进位制也可以按照位置原则计数.由于每一种进位制的基数不同,所用的数字个数也不同.如二进制用0和1两个数字,七进制用0~6七个数字.一般地,若k是一个大于1的整数,那么以k为基数的k进制数可以表示为一串数字连写在一起的形式a n a n-1…a1a0(k)(0<a n<k,0≤a n-1,…,a1,a0<k).其他进位制的数也可以表示成不同位上数字与基数的幂的乘积之和的形式,如110 011(2)=1×25+1×24+0×23+0×22+1×21+1×20,7 342(8)=7×83+3×82+4×81+2×80.非十进制数转换为十进制数比较简单,只要计算下面的式子值即可:a n a n-1…a1a0(k)=a n×k n+a n-1×k n-1+…+a1×k+a0.第一步:从左到右依次取出k进制数a n a n-1…a1a0(k)各位上的数字,乘以相应的k的幂,k的幂从n开始取值,每次递减1,递减到0,即a n×k n,a n-1×k n-1,…,a1×k,a0×k0;第二步:把所得到的乘积加起来,所得的结果就是相应的十进制数.(4)关于进位制的转换,教科书上以十进制和二进制之间的转换为例讲解,并推广到十进制和其他进制之间的转换.这样做的原因是,计算机是以二进制的形式进行存储和计算数据的,而一般我们传输给计算机的数据是十进制数据,因此计算机必须先将十进制数转换为二进制数,再处理,显然运算后首次得到的结果为二进制数,同时计算机又把运算结果由二进制数转换成十进制数输出.1°十进制数转换成非十进制数把十进制数转换为二进制数,教科书上提供了“除2取余法”,我们可以类比得到十进制数转换成k进制数的算法“除k取余法”.2°非十进制之间的转换一个自然的想法是利用十进制作为桥梁.教科书上提供了一个二进制数据与16进制数据之间的互化的方法,也就是先由二进制数转化为十进制数,再由十进制数转化成为16进制数.(三)应用示例思路1例1 把二进制数110 011(2)化为十进制数.解:110 011(2)=1×25+1×24+0×23+0×22+1×21+1×20=1×32+1×16+1×2+1=51.点评:先把二进制数写成不同位上数字与2的幂的乘积之和的形式,再按照十进制的运算规则计算出结果.变式训练设计一个算法,把k进制数a(共有n位)化为十进制数b.算法分析:从例1的计算过程可以看出,计算k进制数a的右数第i位数字a i与k i-1的乘积a i·k i-1,再将其累加,这是一个重复操作的步骤.所以,可以用循环结构来构造算法.算法步骤如下:第一步,输入a,k和n的值.第二步,将b的值初始化为0,i的值初始化为1.第三步,b=b+a i·k i-1,i=i+1.第四步,判断i>n是否成立.若是,则执行第五步;否则,返回第三步.第五步,输出b的值.程序框图如下图:程序:INPUT “a,k,n=”;a,k,nb=0i=1t=a MOD 10DOb=b+t*k^(i-1)a=a\\10t=a MOD 10i=i+1LOOP UNTIL i>nPRINT bEND例2 把89化为二进制数.解:根据二进制数“满二进一”的原则,可以用2连续去除89或所得商,然后取余数.具体计算方法如下:因为89=2×44+1,44=2×22+0,22=2×11+0,11=2×5+1,5=2×2+1,2=2×1+0,1=2×0+1,所以89=2×(2×(2×(2×(2×2+1)+1)+0)+0)+1=2×(2×(2×(2×(22+1)+1)+0)+0)+1=…=1×26+0×25+1×24+1×23+0×22+0×21+1×20=1 011 001(2).这种算法叫做除2取余法,还可以用下面的除法算式表示:把上式中各步所得的余数从下到上排列,得到89=1 011 001(2).上述方法也可以推广为把十进制数化为k进制数的算法,称为除k取余法.变式训练设计一个程序,实现“除k取余法”.算法分析:从例2的计算过程可以看出如下的规律:若十制数a除以k所得商是q0,余数是r0,即a=k·q0+r0,则r0是a的k进制数的右数第1位数.若q0除以k所得的商是q1,余数是r1,即q0=k·q1+r1,则r1是a的k进制数的左数第2位数.……若q n-1除以k所得的商是0,余数是r n,即q n-1=r n,则r n是a的k进制数的左数第1位数.这样,我们可以得到算法步骤如下:第一步,给定十进制正整数a和转化后的数的基数k.第二步,求出a除以k所得的商q,余数r.第三步,把得到的余数依次从右到左排列.第四步,若q≠0,则a=q,返回第二步;否则,输出全部余数r排列得到的k进制数.程序框图如下图:程序:INPUT “a,k=”;a,kb=0i=0DOq=a\\kr=a MOD kb=b+r*10^ii=i+1a=qLOOP UNTIL q=0PRINT bEND思路2例1 将8进制数314 706(8)化为十进制数,并编写出一个实现算法的程序.解:314 706(8)=3×85+1×84+4×83+7×82+0×81+6×80=104 902.所以,化为十进制数是104 902.点评:利用把k进制数转化为十进制数的一般方法就可以把8进制数314 706(8)化为十进制数.例2 把十进制数89化为三进制数,并写出程序语句.解:具体的计算方法如下:89=3×29+2,29=3×9+2,9=3×3+0,3=3×1+0,1=3×0+1,所以:89(10)=10 022(3).点评:根据三进制数满三进一的原则,可以用3连续去除89及其所得的商,然后按倒序的顺序取出余数组成数据即可.(四)知能训练将十进制数34转化为二进制数.分析:把一个十进制数转换成二进制数,用2反复去除这个十进制数,直到商为0,所得余数(从下往上读)就是所求.解:即34(10)=100 010(2)(五)拓展提升把1 234(5)分别转化为十进制数和八进制数.解:1 234(5)=1×53+2×52+3×5+4=194.则1 234(5)=302(8)所以,1 234(5)=194=302(8)点评:本题主要考查进位制以及不同进位制数的互化.五进制数直接利用公式就可以转化为十进制数;五进制数和八进制数之间需要借助于十进制数来转化.(六)课堂小结(1)理解算法与进位制的关系.(2)熟练掌握各种进位制之间转化.(七)作业习题1.3A组3、4.。
人教版高中数学必修三 基本算法语句 ppt课件
INPUT “R=”;R C=2*3.14*R S=3.14*R^2 PRINT “C=”;C
PRINT “S=”; S
END
2020/12/27
16
〖练习3〗.
程序:
INPUT “a,b(a,b≠0)=”;a ,b X=a+b Y=a-b Z=a * b Q=a/b PRINT X,Y,Z,Q END
例1 用描点法作函数y=x3+3x2-24x+30的图象 时,需要求出自变量和函数的一组对应值.编写程序, 分别计算当x=-5,-4,-3,-2,-1,0,1, 2,3,4,5时的函数值.
程序: INPUT “x=”;x -----------------输入语句
y=x^3+3*x^2-24*x+30---------赋值语句
2020/12/27
7
注意: INPUT语句不但可以给单个变量赋值,还可以
给多个变量赋值,其格式为:
INPUT “提示内容1,提示内容2,提示内容3,…”;变量1,变量2,变量 3,…
例如,输入一个学生数学,语文,英语三门课的成绩, 可以写成:
INPUT “数学,语文,英语”;a,b,c
2020/12/27
2020/12/27
1
程序设计语言有很多种。如BASIC,Foxbase, C语言,C++,J++,VB等。为了实现算法中的 三种基本的逻辑结构:顺序结构、条件结构和循 环结构,各种程序设计语言中都包含下列基本的 算法语句:
输入语句 条件 语句
输出语句 循环 语句
赋值语句
这就是这一节所要研究的主要内容——基本算法 语句。
2020/12/27
2
高中数学必修三《基本算法语句》课件
〖例2〗:编写程序,计算一个学生数学、语文、 英语三门课的平均成绩。
分析:先写出算法,画出程序框图,再进行编程。
程序框图:
开始
程序: INPUT “Maths,Chinese,English”;a,b,c y=(a+b+c)/3 PRINT “y=”;y END
输入a,b,c
abc y 3
输出y
(1) SQR( )是一个函数,用来求某个非负数的 算术平方根,即SQR( x )= x (2) ABS( )是一个函数,用来求某个数的绝对 值,即ABS( x )=︱x ︱
一.输入语句
输入语句的一般格式
INPUT “提示内容”;变量
说明: (1)输入语句的功能是对程序中的变量函数、变量或表达式; (3)提示内容与变量之间用分号“;”隔开, 若输入多个变量,变量与变量之间用逗号“,”隔开 (4)“提示内容”和它后面的“ ;”可以省略;
二.输出语句 输出语句的一般格式 PRINT “提示内容”;表达式 说明: (1)输出语句的功能:输出表达式的值,计算。 (2)表达式可以是变量,计算公式或系统信息;
(3)有计算功能,能直接输出计算公式的值.
三.赋值语句 赋值语句的一般格式: 变量=表达式
说明: (1)赋值语句的功能是:先计算出赋值号右边表达 式的值,然后把这个值赋给左边的变量,使该变量的 值等于表达式的值。 (2)赋值语句中的“=”称作赋值号,与数学中的等 号的意义是不同的.赋值号的左右两边不能对换. (3)对于一个变量可以多次赋值。
【探究新知】 例1 用描点法作函数y=x3+3x2-24x+30的图象时,需要求 出自变量和函数的一组对应值.编写程序,分别计算当x=-5, -4,-3,-2,-1,0,1,2,3,4,5时的函数值. 分析:先写出算法,画出程序框图,再进行编程。 程序框图: 开始 输入x 程序: 输入语句
最新人教版高中数学必修3第一章《基本算法语句》
数学人教B必修3第一章1.2 基本算法语句1.了解程序语言与自然语言和程序框图设计算法的区别.2.理解输入、输出语句和赋值语句、条件语句、循环语句的格式和功能.3.能用条件语句、循环语句的格式编写相关问题的程序.1.程序语言都包含一些基本的语句结构,它们分别是________、__________、__________、__________、________.【做一做1】下列语句不属于基本算法语句的是().A.赋值语句B.运算语句C.条件语句D.循环语句2.赋值语句(1)用来表明赋给某一个变量一个具体的确定值的语句叫做__________.(2)赋值语句的一般格式是______________.(3)赋值语句中的“=”号,称做________.①赋值号左边只能是变量名字,而不能是表达式.例如3.6=X是错误的.②赋值号左右不能对换.赋值语句是将赋值号右边的表达式的值赋给赋值号左边的变量,例如Y=X,表示用X的值替代变量Y原先的取值,不能改写为X=Y.因为后者表示用Y 的值替代变量X的值.③不能利用赋值语句进行代数式(或符号)的演算(如化简、因式分解等),如y=x2-1=(x+1)(x-1),这是不能实现的.在赋值语句中的赋值号右边的表达式中的每一个“变量”都必须事先赋给确定的值.在一个赋值语句中只能给一个变量赋值.不能出现两个或多个“=”.④赋值号与数学中的等号的意义不同.赋值号左边的变量如果原来没有值,则在执行赋值语句后,获得一个值.如果原已有值,则执行该语句后,以赋值号右边表达式的值代替该变量的原值,即将原值“冲掉”.如:N=N+1在代数学中是不成立的,但在赋值语句中,意思是将N的原值加1,再赋给N,即N的值增加1.【做一做2-1】下列赋值语句正确的是().A.x=3 B.3=xC.x-3=0 D.3-x=0【做一做2-2】已知变量a,b已被赋值,要交换a,b的值,下列方法正确的是().A.a=b,b=a B.a=c,b=a,c=bC.a=c,b=a,c=a D.c=a,a=b,b=c3.输入语句与输出语句输入语句―→可以为变量提供运行所需要的数据,实现了算法中的输入功能输出语句―→任何求解问题的算法,都要把求解的结果“输出”,通过输出语句来控制①“input ”又称“键盘输入语句”,当计算机执行到该语句时,暂停并等候用户输入程序运行需要的数据.此时,用户只需把数据由键盘输入,然后回车,程序将继续运行.②“提示内容”的作用是在程序执行时提醒用户明确将要输入的是什么样的数据. 如:x =input(“输入学生的语文成绩x =”). ③无计算功能.输入语句要求输入的值只能是具体的常数,不能是函数、变量或表达式. ④变量是指程序运行时其值可以变化的量,我们可以通俗地把它比喻成一个盒子,盒子内可以存放数据,必要时可随时更换盒子内的数据.⑤Scilab 程序语言规定:表达式中的*一定不能省略,也不能写成圆点或×;表达式中的括号一律用小括号;方括号[]另有用法;除法用符号“/”;标准函数的自变量应放在小括号内,如sin(x);圆周率π写成“%pi ”;自然对数的底e 写成“%e ”;绝对值|x |写成abs(x);x 的平方写成x*x 或x^ 2.【做一做3】读下列两个程序,回答问题. ①x =3; y =4; x =y ;print(%io(2),x ,y ) ②x =3; y =4; y =x ;print(%io(2),y ,x )(1)上述两个程序的运行结果分别是________,________; (2)上述两个程序中的第三行有什么区别? 4.条件语句(1)算法结构中的条件分支结构一般由算法语言中的__________来实现.(2)条件语句的一般格式有两种,一种是____________格式,其形式为:if 表达式语句序列1;else 语句序列2;end另一种是__________格式,形式是:if 表达式语句序列1;end有时候条件语句中还套有条件语句,形成条件语句的嵌套.识读程序时,可以用文字的缩进来表示嵌套的层次,以帮助阅读和理解.【做一做4】下面的程序运行后,y 的值是( ). x =3; if x >3 y =x*x ;elsey=2*x;endprint(%io(2),y)A.3 B.6 C.9 D.275.循环语句(1)循环语句用来处理算法中的__________.(2)循环语句主要有两种类型,________和__________.for循环的一般格式为for循环变量=初值:步长:终值循环体;endwhile循环的一般格式为while表达式循环体;endfor循环主要用于预先知道循环次数的情形,while循环用于预先不知道循环次数的情形,两种循环都必须以end结尾.【做一做5-1】下列程序最后输出的结果为().i=1;for i=1:2:7S=3*i;endSA.17 B.21 C.27 D.37【做一做5-2】下列程序的运行结果是________.i=2;S=1;while i<=10S=S/i;i=i+1;endprint(%io(2),S)两种循环语句的执行原理剖析:(1)for循环的执行过程:通过for语句进入循环,将初值赋给循环变量i,当循环变量的值不超过终值时,则顺序执行循环体内的各个语句,遇到end,将循环变量增加一个步长的值,再与终值比较,如果仍不超过终值范围,则再次执行循环体,这样重复执行,直到循环变量的值超过终值,则跳出循环.①只有当循环次数明确时,才能使用本语句.②步长可以为正、负,但不能是0,否则会陷入“死循环”.步长为正时,要求终值大于初值,如果终值小于初值,循环将不能执行.步长为负时,要求终值必须小于初值.③for 语句对应的程序框图如下图所示:(2)while 语句执行过程:该语句对应于程序框图中的循环结构,先判断条件是否成立,当条件成立时,执行循环体,遇到end 语句时,就返回到while ,继续判断条件,若仍成立,则重复上述过程,若不成立,则去执行end 后面的语句(即退出循环体).①当循环次数未知时,只能利用while 循环语句解决累加、累乘问题,循环体结束循环的条件必须是唯一的,若不确定,则无法结束,形成“永不停止”的循环.对于循环结束的条件,要注意与“是”“否”后面的处理框相对应.②while 语句对应的基本框图如图所示:题型一 输入、输出、赋值语句的应用【例1】读用Scilab 语句编写的程序,根据程序画出程序框图. x =input(“x =”); y =input(“y =”); print(%io(2),x/2); print(%io(2),3*y); x =x +1,y =y -1; print(%io(2),x); print(%io(2),y);分析:该程序第1,2句是input 输入语句,要求从键盘输入x 与y 的值;第3,4句是print 输出语句,要求从屏幕输出x2和3y 的值,第5句赋值语句,用x +1的值代替原来x 的值,用y -1的值代替原来y 的值.第6、7句从屏幕输出x 和y 的值,由此可得程序框图.反思:给出程序画框图类的题型,关键是理解程序的功能是什么,然后进行实际操作,在用赋值语句时,可对一个变量重复赋值,变量的值取最后一次的赋值.题型二 条件语句的应用【例2】已知函数y =⎩⎪⎨⎪⎧2x 2-1(x >0),2x +1(x =0),-2x 2+4x (x <0),输入x 的值计算y 的值,画出程序框图,并写出程序.分析:本题是属于已知分段函数的解析式求函数值的问题.本题中分段函数的定义域被分成了三部分,从而在程序中需判定的条件有两个,在使用条件语句时要注意书写顺序及语句间的对应.反思:根据本题可画出条件语句的整体书写格式(嵌套式)如下:⎭⎪⎪⎬⎪⎪⎫if 表达式1语句序列1;else⎭⎪⎬⎪⎫if 表达式2语句序列2;else 语句序列3;end内层条件语句end外层条件语句 题型三 循环语句的应用【例3】用for 语句写出计算1×3×5×7×…×2 011的值的程序. 分析:解决这一问题的算法如下: S1 S =1; S2 i =3; S3 S =S ×i ; S4 i =i +2;S5 如果i >2 011,则执行S6,否则执行S3,S4,S5; S6 输出S .反思:(1)本题中的S =S*i 是循环体.(2)由于是一个累乘问题,如果我们设定S 的初始值为1,i 的初始值为1,则第二句也可改为for i =1:2:2 011,最后程序的运行结果是一样的.(3)注意本程序中分号的作用,如果没有分号,则最后在屏幕上会出现每一步的运行结果;而有分号,则只出现最后的运行结果.【例4】用循环语句写出求满足1+12+13+…+1n >10的最小自然数n 的算法,并写出相应程序.分析:本题不等号的左边为1+12+13+…+1n ,是有规律的累加运算,故引入和变量S ,而要求S >10的最小自然数n ,故可用“while S <=10”来控制循环,又要引入计数变量i ,通过“i =i +1”进行循环.反思:由于本题中终值预先不清楚,因此才考虑用while 循环,要注意程序与算法一致. 题型四 易错辨析【例5】写出求使1+2+3+…+________<2 012成立的所有正整数的一个程序. 错解:S =1; i =1;while S <2 012i =i +1; S =S +i ; endprint(%io(2),i); 错因分析:该算法只能输出符合条件的最大正整数加1后所得的值,故不正确.事实上,为了能输出所有符合条件的正整数,必须把“print(%io(2),i)”移到循环体内.1当a =3,b =5,c =b +2时,print(%io(2),a ,b ,c)在屏幕上的输出结果自上而下依次是( ).A .3,5,7B .3,5,5C .7,3,5D .7,5,32下面程序输入“x =π”时的运算结果是( ).x =input (“x =”);if x>0y =-2;elseif x =0 y =0;elsey =2;end endprint (%io (2),y )A .-2B .1C .πD .2 3下列程序的运行结果是( ).i =0;S =0;while S <=20i =i +1;S =S +i ;end iA .7B .6C .5D .44画出程序框图,编写程序,输入两个实数,输出其差的绝对值. 5设计算法框图和程序,求1+12+13+14+15+16+…+12 011+12 012的值.答案:基础知识·梳理1.输入语句 输出语句 赋值语句 条件语句 循环语句 【做一做1】 B 2.(1)赋值语句 (2)变量名=表达式 (3)赋值号【做一做2-1】 A 【做一做2-2】 D【做一做3】答案:(1)4,43,3(2)上述两个程序中的第三行的区别是:①中“x=y”是将y的值赋给x,②中“y=x”是将x的值赋给y.4.(1)条件语句(2)if—else—end if—end【做一做4】 B5.(1)循环结构(2)for循环while循环【做一做5-1】 B【做一做5-2】 3 628 800程序的功能是计算1×2×3×4×…×10的值.典型例题·领悟【例1】解:【例2】解:程序如下.x=input(“x=”);if x>0y=(2* x^2)-1;elseif x=0y=2*x+1;elsey=-2*x^2+4*xendendprint(%io(2),y)程序框图如下图所示:【例3】解:程序如下:S =1;for i =3:2:2 011 S =S*i ; Endprint(%io(2),S)【例4】 解:算法如下: S1 S =0; S2 i =1;S3 S =S +1i;S4 如果S ≤10,则令i =i +1,并返回S3,否则输出i. 程序如下: S =0; i =1;S =S +1/i ; While S <=10 i =i +1; S =S +1/i ; endprint(%io(2),i)【例5】 正解:解法一: S =1; i =1;w hile S <2 012 print(%io(2),i); i =i +1; S =S +i ; end解法二: S =1; i =1;w hile S <2 012 i =i +1; S =S +i ;print(%io(2),i -1); end随堂练习·巩固1.D print(%io(2),a ,b ,c)在屏幕上的输出是从右往左,即最上面是c 的值,中间是b 的值,最下面是a 的值.2.A 3.B4.解:程序框图如下图所示:程序如下:a =input(“a =”);b=input(“b=”);if a>=ba-b;elseb-a;end5.解:程序框图如下图所示.程序如下:i=1;S=0;w hile i<=2 012S=S+(1/i);i=i+1;endS。
人教课标版高中数学必修3知识归纳:基本算法语句和算法案例
1.2基本算法语句1.2.1输入、输出语句和赋值语句1.输入语句在该程序中的第1行中的INPUT语句就是输入语句.这个语句的一般格式是:其中,“提示内容”一般是提示用户输入什么样的信息.如每次运行上述程序时,依次输入-5,-4,-3,-2,-1,0,1,2,3,4,5,计算机每次都把新输入的值赋给变量“x”,并按“x”新获得的值执行下面的语句.2.输出语句在该程序中,第3行和第4行中的PRINT语句是输出语句.它的一般格式是:3.赋值语句用来表明赋给某一个变量一个具体的确定值的语句.除了输入语句,在该程序中第2行的赋值语句也可以给变量提供初值.它的一般格式是:4.INPUT语句不但可以给单个变量赋值,还可以给多个变量赋值,其格式为:5.(1)赋值语句中的“=”叫做赋值号.(2)赋值语句的作用:先计算出赋值号右边表达式的值,然后把这个值赋给赋值号左边的变量,使该变量的值等于表达式的值.(3)赋值号左边只能是变量名字,而不能是表达式.如:2=X是错误的.(4)赋值号左右不能对换.如“A=B”“B=A”的含义运行结果是不同的.(5)不能利用赋值语句进行代数式的演算.(如化简、因式分解、解方程等)(6)赋值号“=”与数学中的等号意义不同.1.3算法案例1.利用辗转相除法求最大公约数的步骤如下:(1)用较大的数m 除以较小的数n 得到一个商0S 和一个余数0R ;(2):若0R =0,则n 为m ,n 的最大公约数;若0R ≠0,则用除数n 除以余数0R 得到一个商1S 和一个余数1R ;(3):若1R =0,则1R 为m ,n 的最大公约数;若1R ≠0,则用除数0R 除以余数1R 得到一个商2S 和一个余数2R ;……依次计算直至n R =0,此时所得到的1n R 即为所求的最大公约数.2.直接插入排序的基本思想:插入排序的思想就是读一个,排一个.将第1个数放入数组的第1个元素中,以后读入的数与已存入数组的数进行比较,确定它在从大到小的排列中应处的位置.将该位置以及以后的元素向后推移一个位置,将读入的新数填入空出的位置中.(由于算法简单,可以举例说明)3.冒泡排序的基本思想:依次比较相邻的两个数,把大的放前面,小的放后面.即首先比较第1个数和第2个数,大数放前,小数放后.然后比较第2个数和第3个数......直到比较最后两个数.第一趟结束,最小的一定沉到最后.重复上过程,仍从第1个数开始,到最后第2个数...... 由于在排序过程中总是大数往前,小数往后,相当气泡上升,所以叫冒泡排序.4.进位制是一种记数方式用有限的数字在不同的位置表示不同的数值.可使用数字符号的个数称为基数,基数为n ,即可称n 进位制,简称n 进制.现在最常用的是十进制,通常使用10个阿拉伯数字0-9进行记数.对于任何一个数,我们可以用不同的进位制来表示.比如:十进数57,可以用二进制表示为111001,也可以用八进制表示为71、用十六进制表示为39,它们所代表的数值都是一样的.5.辗转相除法与更相减损术的区别:(1)都是求最大公约数的方法,计算上辗转相除法以除法为主,更相减损术以减法为主,计算次数上辗转相除法计算次数相对较少,特别当两个数字大小区别较大时计算次数的区别较明显.(2)从结果体现形式来看,辗转相除法体现结果是以相除余数为0则得到,而更相减损术则以减数与差相等而得到6. 一般地,若k 是一个大于一的整数,那么以k 为基数的k 进制可以表示为: 110()110...(0,0,...,,)n n k n n a a a a a k a a a k --<<≤<,而表示各种进位制数一般在数字右下脚加注来表示,如111001(2)表示二进制数,34(5)表示5进制数.。
高中数学必修三算法初步知识点讲解-教育文档
高中数学必修三算法初步知识点讲解一、考点(必考)概要:1、算法的概念:①由基本运算及规定的运算顺序所构成的完整的解题步骤,或者是按照要求设计好的有限的计算序列,并且这样的步骤或序列能解决一类问题。
②算法的五个重要特征:ⅰ有穷性:一个算法必须保证执行有限步后结束;ⅱ确切性:算法的每一步必须有确切的定义;ⅲ可行性:算法原则上能够精确地运行,而且人们用笔和纸做有限次即可完成;ⅳ输入:一个算法有0个或多个输入,以刻划运算对象的初始条件。
所谓0个输入是指算法本身定出了初始条件。
ⅴ输出:一个算法有1个或多个输出,以反映对输入数据加工后的结果。
没有输出的算法是毫无意义的。
2、程序框图也叫流程图,是人们将思考的过程和工作的顺序进行分析、整理,用规定的文字、符号、图形的组合加以直观描述的方法(1)程序框图的基本符号:(2)画流程图的基本规则:①使用标准的框图符号②从上倒下、从左到右③开始符号只有一个退出点,结束符号只有一个进入点,判断符号允许有多个退出点④判断可以是两分支结构,也可以是多分支结构⑤语言简练⑥循环框可以被替代3、三种基本的逻辑结构:顺序结构、条件结构和循环结构(1)顺序结构:顺序结构描述的是是最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行的。
(2)条件结构:分支结构的一般形式两种结构的共性:①一个入口,一个出口。
特别注意:一个判断框可以有两个出口,但一个条件分支结构只有一个出口。
②结构中每个部分都有可能被执行,即对每一个框都有从入口进、出口出的路径。
以上两点是用来检查流程图是否合理的基本方法(当然,学习循环结构后,循环结构也有此特点)(3)循环结构的一般形式:在一些算法中,经常会出现从某处开始,按照一定条件,反复执行某一处理步骤的情况,这就是循环结构,反复执行的处理步骤为循环体,显然,循环结构中一定包含条件结构。
循环结构又称重复结构,循环结构可细分为两类:①如左下图所示,它的功能是当给定的条件成立时,执行A 框,框执行完毕后,再判断条件是否成立,如果仍然成立,再执行A框,如此反复执行框,直到某一次条件不成立为止,此时不再执行A框,从b离开循环结构。
人教版高中数学必修三目录-)(最新整理)
必修 3第一章算法初步1.1算法与程序框图1.2基本算法语句1.3算法案例第二章统计2.1随机抽样2.2用样本估计总体2.3变量间的相关关系第三章概率3.1随机事件的概率3.2古典概型3.3几何概型“”“”At the end, Xiao Bian gives you a passage. Minand once said, "people who learn to learn are very happy people.". In every wonderful life, learning is an eternal theme. As a professional clerical and teaching position, I understand the importance of continuous learning, "life is diligent, nothing can be gained", only continuous learning can achieve better self. Only by constantly learning and mastering the latest relevant knowledge, can employees from all walks of life keep up with the pace of enterprise development and innovate to meet the needs of the market. This document is also edited by my studio professionals, there may be errors in the document, if there are errors, please correct, thank you!。
人教版高中数学必修三基本算法语句【优选】共45页文档
16、自己选择的路、跪着也要把它走 完。 17、一般情况下)不想三年以后的事, 只想现 在的事 。现在 有成就 ,以后 才能更 辉煌。
18、敢于向黑暗宣战的人,心里必须 充满光 明。 19、学习的关键--重复。
20、懦弱的人只会裹足不前,莽撞的 人只能 引为烧 身,只 有真正 侈 。——CocoCha nel 62、少而好学,如日出之阳;壮而好学 ,如日 中之光 ;志而 好学, 如炳烛 之光。 ——刘 向 63、三军可夺帅也,匹夫不可夺志也。 ——孔 丘 64、人生就是学校。在那里,与其说好 的教师 是幸福 ,不如 说好的 教师是 不幸。 ——海 贝尔 65、接受挑战,就可以享受胜利的喜悦 。——杰纳勒 尔·乔治·S·巴顿
谢谢!
人教版高中数学必修三 基本算法语句共44页PPT
16、人民应该为法律而战斗,就像为 了城墙 而战斗 一样。 ——赫 拉克利 特 17、人类对于不公正的行为加以指责 ,并非 为的 牺牲者 。—— 柏拉图 18、制定法律法令,就是为了不让强 者做什 么事都 横行霸 道。— —奥维 德 19、法律是社会的习惯和思想的结晶 。—— 托·伍·威尔逊 20、人们嘴上挂着的法律,其真实含 义是财 富。— —爱献 生
谢谢
11、越是没有本领的就越加自命不凡。——邓拓 12、越是无能的人,越喜欢挑剔别人的错儿。——爱尔兰 13、知人者智,自知者明。胜人者有力,自胜者强。——老子 14、意志坚强的人能把世界放在手中像泥块一样任意揉捏。——歌德 15、最具挑战性的挑战莫过于提升自我。——迈克尔·F·斯特利
人教版高中数学必修三基本算法语句共44页文档
41、学问是异常珍贵的东西,从任何源泉吸 收都不可耻。——阿卜·日·法拉兹
42、只有在人群中间,才能认识自 己。——德国
43、重复别人所说的话,只需要教育; 而要挑战别人所说的话,则需要头脑。—— 玛丽·佩蒂博恩·普尔
44、卓越的人一大优点是:在不利与艰 难的遭遇里百ห้องสมุดไป่ตู้不饶。——贝多芬
45、自己的饭量自己知道。——苏联
人教版高中数学必修三基本算法语句
56、极端的法规,就是极端的不公。 ——西 塞罗 57、法律一旦成为人们的需要,人们 就不再 配享受 自由了 。—— 毕达哥 拉斯 58、法律规定的惩罚不是为了私人的 利益, 而是为 了公共 的利益 ;一部 分靠有 害的强 制,一 部分靠 榜样的 效力。 ——格 老秀斯 59、假如没有法律他们会更快乐的话 ,那么 法律作 为一件 无用之 物自己 就会消 灭。— —洛克
人教版高中数学必修三基本算法语句共44页
人教版高中数学必修三基本 算法语句
26、机遇对于有准备的头脑有特别的 亲和力 。 27、自信是人格的核心。
28、目标的坚定是性格中最必要的力 量泉源 之一, 也是成 功的利 器之一 。没有 它,天 才也会 在矛盾 无定的 迷径中 ,徒劳 无功。- -查士 德斐尔 爵士。 29、困难就是机遇。--温斯顿.丘吉 尔。 30、我奋斗,所以我快乐。--格林斯 潘。
66、节制使快乐增加并使享受加强。 ——德 谟克利 特 67、今天应做的事没有做,明天再早也 是耽误 了。——裴斯 泰洛齐 68、决定一个人的一生,以及整个命运 的,只 是一瞬 之间。 ——歌 德 69、懒人无法享受休息之乐。——拉布 克 70、浪费时间是一桩大罪过。——卢梭
人教A版高中数学必修三课件基本算法语言1
例:输出语句 PRINT “s=“;s 或PRINT y 或PRINT “y=“;(a+b+c)/3
例1、用描点法作函数y=x^3+3x^2-24x+30的图象时,需 要求自变量和函数的一组对应值。编写程序,求对应值。
INPUT “x=“;x y=x^3+3*x^2-24*x+30
PRI星整理制作
1.2基本算法语句
1.2.1输入语句、输出语句、赋值语句
一、输入、输出语句
作用:用来实现算法的输入信息、输出结果的功能。
格式:
输入语句格式:INPUT “提示内容”;变量 输出语句格式:PRINT “提示内容”;表达式
例:输入语句 INPUT “x=“;x 或INPUT x 或INPUT “x=,y=”;x,y
相同.
1.又称“打印语句”,将 1.在程序运行过程中给
表达式的值在屏幕上显 变量赋值
示出
2.左边只能是变量,右
2.表达式可以是变量、 边表达式可以是一个常
计算公式或系统信息 量、变量或含变量的运
3.一个语句可以输出多 算式
个表达式. 不同的表达 3.赋值号左右不能互换
式之间可用“,”分隔 4.有计算功能
三、课后练习4:
p.24练习第四题程序
程序: INPUT “a,b,c=“;a,b,c x=10.4*a y=15.6*b z=25.2*c sum=x+y+z PRINT “sum=“;sum END
三、课后练习3:
p.16练习第三题程序
程序: INPUT “a=“;a INPUT “b=“;b INPUT “c=“;c p=(a+b+c)/2 s=SQR(p*(p-a)*(p-b)*(p-c)) PRINT “s=“;s END
人教课标版高中数学必修三《基本算法语句(第3课时)》教案-新版
1.2.3 循环语句一、教学目标1.核心素养通过学习循环语句,初培养学生基本的数学抽象、数学建模和数据处理能力.2.学习目标(1)理解循环语句的两种形式,能读懂包含循环语句的算法代码;(2)能正确运用循环语句表达解决具体问题的过程;(3)通过具体实例算法设计,培养学生逻辑思维能力与表达能力,进一步体会算法思想.3.学习重点(1)循环语句的表示方法、结构和用法;(2)由程序框图转化为程序语句时,条件结构和循环结构的区别.4.学习难点(1)将具体问题的程序框图转化为程序语句的过程;(2)当型循环和直到型循环在格式、逻辑方面的区别与联系.二、教学设计(一)课前设计1.预习任务任务1阅读教材P29—P32,思考:循环语句的功能是什么?它有怎样的格式要求?任务2举两个循环结构的算法例子,画出程序框图,并进一步写成程序语言.2.预习自测1.WHILE语句的一般格式为( )A.IF条件—WHILE—循环体—ENDB.IF条件—语句1—ELSE—语句2—END IFC.WHILE—循环体—WENDD.WHILE—条件—循环体—WEND【解析】当计算机遇到WHILE语句时,先判断条件的真假,若条件符合,就执行循环体,若条件不符合,则不执行循环体,直接跳到WEND后的语句.故WHILE语句的格式为WHILE—条件—循环体—END,故D正确.解:D2.运行下面的程序,执行后输出的s的值是A.11 B.15 C.17 D.19【解析】本题是一道关于循环结构的问题,需要借助循环结构的相关知识进行解答.第一次:i=3,s=7,满足循环条件因而继续循环;第二次:i=5,s=11,满足循环条件因而继续循环;第三次:i=7,s=15,不满足循环条件,循环终止,输出s,即s=15.故选B.解:B3.下列循环语句,循环终止时,.【解析】本题是一道关于循环语句的题目,需结合循环语句仔细分析进行求解.该循环语句是直到型循环语句,当条件i>4开始成立时,循环终止,则i=5.解:5(二)课堂设计1.知识回顾(1)条件语句的基本格式:(IF-THEN-ELSE格式)当计算机执行上述语句时,首先对IF 后的条件进行判断,如果条件符合,就执行THEN 后的语句1,否则执行ELSE 后的语句2.其对应的程序框图为:(如上右图)在某些情况下,也可以只使用IF-THEN 语句:(即IF-THEN 格式)计算机执行这种形式的条件语句时,也是首先对IF 后的条件进行判断,如果条件符合,就执行THEN 后的语句,如果条件不符合,则直接结束该条件语句,转而执行其他语句.其对应的程序框图为:(如上右图) 2.问题探究问题探究一 为什么要学习循环语句?●活动一 复习与思考,了解学习条件语句的必要性 引例1 设计求1+3+5+7+…+99的算法的程序框图.分析:可设置一个循环结构来实现连加,注意循环的次数和累加变量的取值. 详解:直到型算法如下: 第一步,S =0. 第二步,i =1. 第三步,S =S +i . 第四步,i =i +2.IF 条件 THEN语句 END IF第五步,若i不大于99,则返回重新执行第三步、第四步、第五步,否则执行第六步.第六步,输出S值.程序框图如图所示.当型循环算法如下:第一步,S=0.第二步,i=1.第三步,当i≤99时,转第四步,否则输出S.第四步,S=S+i.第五步,i=i+2,并转入第三步.相应程序框图如图所示.想一想:若要利用计算机编程来求自然数1+2+3+……+99的和的话,就要将算法程序框图写成计算机程序,以我们前面所学的输入、输出语句、赋值语句和条件语句能不能满足“我们日益增长的物质需要”呢?由于该程序框图中有循环结构,故仅仅用输入、输出语句、赋值和条件语句还不能能写出这个程序!故应进一步学习循环语句.问题探究二●活动一 循环语句的格式与功能算法中的循环结构是由循环语句来实现的.对应于程序框图中的两种循环结构,一般程序设计语言中也有当型(WHILE 型)和直到型(UNTIL 型)两种语句结构.即WHILE 语句和UNTIL 语句. (1)WHILE 语句的一般格式是:其中循环体是由计算机反复执行的一组语句构成的.WHLIE 后面的“条件”是用于控制计算机执行循环体或跳出循环体的.WHILE 条件循环体 WEND当计算机遇到WHILE语句时,先判断条件的真假,如果条件符合,就执行WHILE 与WEND之间的循环体;然后再检查上述条件,如果条件仍符合,再次执行循环体,这个过程反复进行,直到某一次条件不符合为止.这时,计算机将不执行循环体,直接跳到WEND语句后,接着执行WEND之后的语句.因此,当型循环有时也称为“前测试型”循环.其对应的程序结构框图为:(如上右图)(2)UNTIL语句的一般格式是:其对应的程序结构框图为:(如上右图)想一想:直到型循环又称为“后测试型”循环,参照其直到型循环结构对应的程序框图,说说计算机是按怎样的顺序执行UNTIL语句的?从UNTIL型循环结构分析,计算机执行该语句时,先执行一次循环体,然后进行条件的判断,如果条件不满足,继续返回执行循环体,然后再进行条件的判断,这个过程反复进行,直到某一次条件满足时,不再执行循环体,跳到LOOP UNTIL 语句后执行其他语句,是先执行循环体后进行条件判断的循环语句.●活动二初步应用,写出循环结构的算法程序引例2 若1+2+3+4+5+…+n>2 014,试设计一个程序,寻找满足条件的最小整数n.详解:UNTIL语句(直到型循环结构)如下:WHILE语句(当到型循环结构)如下:DO循环体LOOP UNTIL 条件练习:你能根据程序框图写出引例2中的两种算法程序吗?(解略)问题探究二●活动一初步运用,循环语句的识别例1 在下面的程序运行中,计算机输出的结果是________.【知识点:算法的循环语句】详解:根据题意,程序对20每次减3,直至小于0为止,当循环到第6次时,x =2,此时仍不符合条件,故x变为-1,至此x<0,满足条件,结束循环.例2 下列程序:执行完毕后a的值为( )A.99 B.100 C.101 D.102【知识点:算法的循环语句】解:B●活动二根据条件程序框图写程序例3 设计算法求1111 12345620132014++++⨯⨯⨯⨯…的值.要求画出程序框图,写出用基本语句编写的程序.【知识点:算法的循环语句】详解:这是一个累加求和问题,共1 007项相加,可设计一个计数变量,一个累加变量,用循环结构实现这一算法.程序框图如图所示.程序如下:点拨:编写此类问题的程序,要把握以下几点:①循环体要正确,尤其要注意循环体中的变量是否齐全.②循环条件要正确,条件与初始值要对应.③程序语句的格式要正确,循环结束时要有LOOP UNTIL,程序结束时要有END.例4 编写程序求n!=1×2×3×…×n.(其中正整数n由键盘输入).【知识点:算法的循环语句】详解:程序框图如下:方法一:方法二:程序如下:方法一: 方法二:点拨:当型循环语句中的WHILE 和WEND 成对出现.计算机执行当型循环语句时,先判断条件的真假,若条件为真,执行循环体,若为假则退出.这是确定是否应用当型语句的关键. 3.课堂总结 【知识梳理】(1)WHILE 语句(当型)的一般格式是:(2)UNTIL 语句(直到型)的一般格式是:【重难点突破】(1)直到型语句只是循环的开始标记,遇到DO 语句,程序只是记住这个标记,其他什么也不做,接着执行后面的循环体,在执行一次循环体后,再检查LOOP 语句中的条件是否成立.如果不成立,就重复执行循环体,直到条件符合时退出循环.(2)当型循环以WHILE 开头,以WEND 作为结束标志.WEND 是WHILE END 的缩写,表示“WHILE 循环到此结束.” 4.随堂检测1.有如图程序段,其中描述正确的是( )A .WHILE 循环执行10次B .循环体是无限循环C .循环体语句一次也不执行D .循环体语句只执行一次 【知识点:算法的循环语句】【解析】判断k =8是否满足k =0,显然不满足,故不执行循环,所以循环体语句一次也不执行.WHILE 条件循环体 WENDDO循环体LOOP UNTIL 条件解:C2.下列程序运行后输出的结果为( )A.1 B.3 C.5 D.7【知识点:算法的循环语句】【解析】该程序执行过程是:i=1,i=1<5满足,i=1+2=3;i=3<3满足,i=3+2=5;i=5<5不满足,输出i的值为5.故选C.解:C3.下面程序运行后输出的结果是________.【知识点:算法的循环语句】【解析】每循环一次,x与i均增加1,直到i>5时为止,所以输出结果为6. 解:64.在下面的程序运行中,计算机输出的结果是_____.【知识点:算法的循环语句】【解析】当循环6次后,x的值为20-18=2,此时2<0不成立,因此再循环一次,所以得到的x的值为2-3=-1,-1<0,满足条件,所以结束循环,输出-1.解:-1(三)课后作业基础型自主突破1.下列说法中正确的是( )A.WHILE循环和UNTIL循环结构相同B.WHILE循环结构首先要求对表达式进行判断,若表达式为真,则执行循环体部分C.WHILE循环每次开始执行循环体前,都要判断表达式是否为假D.WHILE循环每次开始执行循环体前,都要判断表达式是否为假,这样重复执行,一直到表达式值为真时,就跳过循环体部分,重新判断表达式的值,直到循环结束【知识点:算法的循环语句】【解析】WHILE语句有两种形式,当型循环和直到型循环,正确理解它们的结构特点,可知B正确.解:B2.下面的程序运行后,输出的结果为( )A.13,7 B.7,4 C.9,7 D.9,5【知识点:算法的循环语句】【解析】执行程序,s=2×1-1=1时,i=1+2=3,s=2×3-1=5时,i=3+2=5;s=2×5-1=9时,i=5+2=7,所以s=9,i=7.解:C3.以下给出求1×3×5×…×99的值的四个程序,其中正确的有( )A.①③B.②④C.①④D.②③【知识点:算法的循环语句】【解析】本题主要考查循环结构的程序框图,解答此题的关键在于找准循环终止条件.首先由已知条件,设计计算1×3×5×…×99的一个算法程序知,S为累乘的形式,即S=S*i.其后为循环终止条件,故判断框内的条件可为:i>99;然后转化成循环语句.解: C4.下列程序运行后输出的结果为( )A.50 B.5 C.25 D.0【知识点:算法的循环语句】【解析】本程序的功能是求a+j被5除所得的余数,程序第一次运算后,a=2,j=2;第二次运算后,a=4,j=3;第三次运算后,a=2,j=4;第四次运算后,a=1,j=5;第五次运算后,a=1,j=6.故选D.解:D5.已知程序如下,则( )A.输出结果是-8 B.只能执行二次循环C.能执行三次循环D.语法错误,是死循环【知识点:算法的循环语句】【解析】该程序求解的是x3,当x大于6时,输出,当输入-2时,x3还是一个负数,负数的三次方永远都是负数,故该程序是一个死循环.解:D能力型师生共研6.如果以下程序运行后输出的结果是132,那么在程序中UNTIL后面的“条件”应为( )A.i>11 B.i>=11 C.i<=11 D.i<11【知识点:算法的循环语句】【解析】因为输出的结果是132,即s=1×12×11,需执行2次,则程序中UNTIL 后面的“条件”应为i<11.故选D.解:D8.用UNTIL语句编写程序,计算11111223341920++++++++…的值.程序如下:请将程序补充完整,横线处应填________.【知识点:算法的循环语句】【解析】很明显,横线处是循环终止的条件,由于该循环语句是直到型循环语句,则满足该条件时循环终止,故填i>19(或i>=20).解:i>199.下面是一个用于计算11111223342021++++⨯⨯⨯⨯…的程序,则①处应填的语句是________,②处应填的语句是________.【知识点:算法的循环语句】【解析】累加求和需用赋值语句“1(1)s s i i =++”,控制执行循环条件需要用赋值语句“i =i +1”. 解:1(1)s s i i =++;i =i +1 探究型多维突破10.如图是计算1111232012232012+++++++…的值的程序框图.(1)图中空白的判断框内应填________,执行框内应填________.(2)写出与程序框图相对应的程序.【知识点:算法的循环语句】【解析】(1)本题考查的知识点是程序框图,由已知得本程序的作用是计算1111232012232012+++++++…的值,由于第一次执行循环时的循环变量初值为2,步长为1,最后一次执行循环进循环变量值为2012,根据利用循环结构进行累加的方法,不难得出结论.(2)先判定循环的结构,然后选择对应的循环语句,对照流程图进行逐句写成语句即可.解:(1)判断框:i<=2012?或i<2013?执行框:1 S S ii =++(2)程序如下:程序框图如图所示:11.给出某班50名学生的数学测试成绩,60分及以上为及格,要求统计及格人数、及格人数的平均分、全班同学的平均分,画出程序框图,并写出程序语句. 【知识点:算法的循环语句】【解析】本道题主要考查了循环结构的知识点,循环结构是算法的三种逻辑结构之一,循环结构一般有两种表示方法:一是直到型,二是当型循环结构.要解决本道题,关键是确定循环结构的循环体和循环结束变量的值,据此即可得到答案. 解:程序框图如图:程序如下:1.如图,给出四个框图,其中满足WHILE语句结构的是( )A.①②B.②③C.②④D.③④【知识点:算法的循环语句】【解析】本题考查算法的循环语句,循环语句是由循环体及循环的终止条件两部分组成的.每次执行循环体前都要对条件表达式进行判断,满足条件的只有②③,答案选B.解:B2.读程序回答问题.对甲乙两程序和输出结果判断正确的是( )A.程序不同,结果不同B.程序不同,结果相同C.程序相同,结果不同D.程序相同,结果相同【知识点:算法的循环语句】【解析】程序甲是计数变量i从1开始逐步递增直到i=1000时终止,累加变量从0开始,这个程序计算的是:1+2+3+…+1000;程序乙计数变量从1000开始逐步递减到i=1时终止,累加变量从0开始,这个程序计算的是1000+999+…+1.但这两个程序是不同的.两种程序的输出结果都是:S=1+2+3+…+1000=100500.故选B.解:B3.下列程序的功能是( )A.计算1+3+5+…+2 012B.计算1×3×5×…×2 012C.求方程1×3×5×…×i=2 012中的i值D.求满足1×3×5×…×i>2 012的最小整数i【知识点:算法的循环语句】【解析】执行该程序可知S=1×3×5×…×i,当S≤2 012开始不成立时,输出i,则求满足1×3×5×…×i>2 012的最小整数i.解:D4.以下程序运行后输出的结果为( )A.17,8 B.21,7 C.21,11 D.19,11【知识点:算法的循环语句】【解析】第一次循环得i=3,S=2×3+3=9,i=3+3=6.第二次循环得i=8,S =2×8+3=19,i=8+3=11.此时i>8,所以,输出S=19,i=11.解:D5.下列程序,若输入a=3,b=-1,n=5,则输出的是________.【知识点:算法的循环语句】【解析】根据题意可得:当i>5-2时程序跳出,故我们一步一步进行推导:第一次循环:c=a+b=2,a=b= -1,b=c=2,i=2 ;第二次循环:c=1,a=2,b=1,i=3;第三次循环:c=3,a=1,b=3,i=4>3,此时程序跳出,故输出值为3;故答案为:3.解:c=36.下面是求满足1(1)10002n>的最小正整数n的程序,空白处应填________.【知识点:算法的循环语句】【解析】该题是求满足条件的最小的正整数n的程序框图,难度在于正确识别框图的结构功能,根据功能结构分析程序运行的一些具体条件,最终条件是程序结束的标志,即可得出答案.解:i-17.用WHILE语句写出求1+21+22+…+263的值的程序.【知识点:算法的循环语句】【解析】用WHILE语句时,要弄清循环的条件,以及利用语句s=s+2^i,i=i+1作为循环体,循环条件是:i<=63.最后根据WHILE语句格式即可写出.解:算法步骤如下:第一步,令i=0,S=0.第二步,P=2i,S=S+P,i=i+1.第三步,如果i≤63,那么返回第二步;否则,执行第四步.第四步,输出S.程序如下:8.程序:要使上述程序能运算出“1+2+…+100”的结果,需将语句“i=i+1”加在________处.【知识点:算法的循环语句】【解析】根据程序运行后输出的是“1+2+…+100”,判断出两个赋值语句S=S+i,i=i+1,根据累加的表达式,判断出i=i+1应该在S=S+i后并且在循环体内,从而得出答案.解:③9.根据框图,写出程序.【知识点:算法的循环语句】【解析】本题考查循环结构的程序框图转化为程序,解答本题时根据程序框图各部分的含义,写出对应程序语句,即可得出答案.解:程序如下:10.编写程序求2×4×6×…×100的值(用两种方法).【知识点:算法的循环语句】【解析】根据已知中程序功能,知这是一个可能利用循环进行累计运算得到结果,根据程序框图中各语句的功能,即可写出程序语句.本题中求100以内所有偶数的乘积,可根据偶数两种不同的表示方法,得出两种程序.解:程序如下:。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
人教版高中数学基本算法语句____________________________________________________________________________________________________________________________________________________________________1.理解学习基本算法语句的意义.2.学会输入语句、输出语句和赋值语句,条件语句和循环语句的基本用法.3.理解算法步骤、程序框图和算法语句的关系,学会算法语句的写法.1. 赋值、输入和输出语句(1)赋值语句:在表述一个算法时,经常要引入变量,并赋给该变量一个值。
用来表明赋给某一个变量一个具体的确定值的语句叫做赋值语句。
在算法语句中,赋值语句是最基本的语句。
赋值语句的一般格式为:__________________。
赋值语句中的“=”号,称作赋值号,赋值语句的作用是先计算出赋值号右边表达式的值,然后把该值赋给赋值号左边的变量,使该变量的值等于表达式的值。
说明:①赋值语句左边只能是变量名字,而不是表达式,右边表达式可以是一个数据、常量或表达式;②赋值语句中的赋值号“=”的左右两边不能对换,它将赋值号右边的表达式的值赋给赋值号左边的变量;③不能利用赋值语句进行代数式(或符号)的演算(如化简、因式分解等)。
在赋值语句中的赋值号右边的表达式中的每一个“变量”都必须事先赋给确定的值。
在一个赋值语句中只能给一个变量赋值,不能出现两个或多个“=”;④赋值号与数学中的等号的意义不同。
赋值号左边的变量如果原来没有值,则在执行赋值语句后,获得一个值。
如果原已有值,则执行该语句后,以赋值号右边表达式的值代替该变量的原值,即将原值“冲掉”;⑤对于一个变量可以多次赋值。
(2)输入语句在某些算法中,变量的初值要根据情况经常地改变。
一般我们把程序和初始数据分开,每次算题时,即使初始数据改变,也不必改变程序部分,只要每次程序运行时,输入相应的数据即可。
这个过程在程序语言中,用“输入语句”来控制。
不同的程序语言都有自己的输入指令和方法。
在Scilab2.7中的输入语句之一是“input”。
“input”在计算机程序中,通常称为键盘输入语句。
“input”不仅可以输入数值,也可以输入单个或多个字符,如X=input(“What is your name?”.“string”)输入你的名字。
String代表输入字符型变量。
在Scilab2.7中,还有其它输入语句。
如“read”输入语句。
在其它各种程序语言中,一般都有自己的输入控制语句,它们的作用是相同的,只是每种程序语言的控制代码和表现形式不同。
这里,我们只需理解程序语言的含义,减少你今后深入学习程序语言的困难。
输入语句与赋值语句的区别在于:赋值语句可以将一个代数表达式的值赋于一个变量,而输入语句由于要求输入的值只能是具体的常数,不能是函数、变量或表达式,因此输入语句只能将读入的具体数据赋给变量。
(3)输出语句任何求解问题的算法,都要把求解的结果“数出”。
由此可知,任何程序语言也必须有“输出语句”来控制数出。
不同的程序语言都有自己的输出语句和表现形式,但功能是一样的,就是以某种形式把求解结果“数出”出来。
在Scilab中,有各种输出语句,如:print,write,format,printf,disp。
例如:一个算法是用Scilab中的rand()函数,首先生成一个0~1之间的随机数并把它赋值a+赋值给变量c,最后把它们都输出到屏幕上,这个算给变量a,再把数值3复制给变量b,把b法用Scilab程序写出,并用print(%io(2),a,b,c)语句控制输出。
在Scilab界面内直接写出程序并运行如下:a=rand();b=3;c=ba+;print(%io(2),a,b,c)c=3.7560439b=3.a=.7560439程序中的print(%io(2),a,b,c)的参数%io(2)表示在屏幕上输出。
2. 条件语句处理条件分支逻辑结构的算法语句,叫做条件语句。
计算机通常是按照程序中语句出现的先后顺序依次往下执行的,但有时需要根据某个给定的条件是否满足而决定所要执行的语句,这时就需要条件语句。
Scilab语言中的条件语句分为if语句和select-case语句。
我们主要介绍if语句。
if语句的一般格式是:if 表达式语句序列1;else语句序列2;end该语句的功能为,如果表达式结果为真,则执行表达式后面的语句序列1;如果表达式结果为假,则执行else后面的语句序列2。
其实,if语句的简单的格式是:if 表达式语句序列1;end这就是说,如果表达式结果为真,则执行表达式后面的语句序列1,否则跳过语句序列1。
3. 循环结构在算法程序语言中一般通过循环语句来处理算法中的循环结构。
我们知道,在实际问题中会遇到许多有规律的重复运算,或者在程序中需要多某些语句进行重复的执行,这样就需要用到循环语句进行控制。
Scilab程序语言中提供了两种循环语句:for循环和while循环。
for循环的格式为:for循环变量=初值:步长:终值循环体end这种循环结构,循环变量被赋初值后,如果循环变量没有超过终值,则执行语句序列;循环变量递增(递增值为步长),如果没有超过终值,继续执行循环;否则,循环结束。
while语句的格式为:while 表达式循环体end这种循环结构,首先要求对表达式进行判断,如果表达式为真,则执行循环体部分。
每次开始执行循环体前,都要判断表达式是否为真。
这样重复执行,一直到表达式值为假时,就跳过循环体部分,循环结束。
类型一赋值语句的应用例1:请写出下面程序运行后输出的结果.a=7;b=5;c=(a-b)/2;d=c*c;d练习1:下列关于赋值语句的说法错误的是()A.赋值语句的作用是先计算出赋值号右边的表达式的值B.赋值语句是把左边变量的值赋给赋值号右边的表达式C.赋值语句是把右边表达式的值赋给赋值号左边的变量D.在算法语句中,赋值语句是最基本的语句练习2:请写下面程序运行的结果.x=0;x=x+1;x=x+2;x=x+3;x类型二输入、输出语句例2:编写一个程序,要求输入两个数a、b的值,输出a+b和ab的值.练习1:任给三个变量a、b、c赋值,设计一个计算a2-3b2+5c的程序.类型三三种语句的功能例3:写出下列语句描述的算法的输出结果.(1)a=5;b=3;c=(a+b)/2d=c*c;print(%io(2),d);(2)a=1;b=2;c=a+b;b=a+c-b;print(%io(2),a,b,c);(3)a=10;b=20;c=30;a=b;b=c;c=a;print(%io(2),a,b,c);练习1:阅读下列程序,给出当a=2,b=-5时的运行结果:(1)a=input(“a=”);b=input(“b=”);x=a+b;y=a-b;a=(x+y)/2;b=(x-y)/2;print(%io(2),a,b);(2)a=input(“a=”);b=input(“b=”);a=a+b;b=a-b;a=(a+b)/2;b=(a-b)/2;print(%io(2),a,b);(3)a=input(“a=”);b=input(“b=”);a=a+b;b=a-b;a=(a-b)/2;b=(a+b)/2;print(%io(2),b,a);类型四 条件语句的应用例4:编写程序计算:y =⎩⎪⎨⎪⎧1, x ≥0-1,x <0.练习1:编写程序,输入两个实数,由大到小输出这两个数.练习2:编写一个程序对输入的任意一个非零实数,判断其符号.类型五 循环语句的应用例5:应用循环语句编写程序求12+14+…+1100的值.练习1:利用循环语句编写一个程序,求所输入的50名同学数学成绩中大于80分的成绩的平均分.例6:写出求满足1+2+3+…+n >2 010的最小的自然数n 的程序,并画出其程序框图.练习1:编写程序计算102+202+302+…+1002的值.1.下列赋值语句正确的是( ) A .6=x B .x +y =6 C .x =y =2D .x =x +22.当a =1,b =3时,执行完下面一段程序后x 的值是( ) if a<b x =a +b elsex =a -b end xA .1B .3C .4D .-23.下列程序运行后输出的结果为( ) x =1; y =1; z =0; while x<=4 while y<=x +2 z =z +1; y =y +1; endprint(%io(2),z); x =z +1; y =1; end end A .3,4,5,6 B .4,5,6,7 C .5,6,7,8D .6,7,8,94.下列程序的运行结果是________. a =1;b =3;a =a +b ;b =b*a ;print (%io (2),a ,b );5.运行下面的程序时,若输入的值为100、99,则输出的结果为________;若输入的值为1、2,则输出的结果为________.A =input (”A =”);B =input (”B =”);if A<B T =A ; A =B ;B =T ;elseA =A -B ;endprint (%io (2),A );6.在求1+2+3+…+50的值时,在Scilab 中的文本编辑中写出的程序如下:则横线上应填写的语句是________.;%io (2),S );7.根据以下给出的程序,画出其相应的程序框图,并指明该算法的功能. n =1;S =1;while S<5 000 S =S*n ;n =n +1;endn =n -1;print (%io (2),n );_________________________________________________________________________________ _________________________________________________________________________________基础巩固一、选择题1.执行“print(%io(2),3+5)”的输出结果是( ) A .3+5=3+5 B .3+5=8 C .8D .8=82.下列给出的输入、输出语句正确的是( ) ①input a ;b ;c ②input x =3③print A =4 ④print(%io(2),a) A .①② B .②③ C .③④D .④3.给出以下四个问题:①输入一个数x ,输出它的相反数;②求面积为6的正方形的周长;③求三个数a 、b 、c 中的最大数;④求函数f (x )=⎩⎪⎨⎪⎧x -1, x ≥0x +2, x <0的函数值.其中不需要用条件语句来描述其算法的有( ) A .1个 B .2个 C .3个D .4个4.下列对while 语句的说法不正确的是( )A .当计算机遇到while 语句时,先判断是否满足条件,如果符合条件,就执行循环体B .当条件不符合时,将不执行循环体直接跳出循环C .while 语句的格式为:while —表达式—循环体—endD .while 语句的特点是“后测试”,即先执行循环体,然后判断是否满足条件 5.下列关于for 循环的说法错误的是( ) A .在for 循环中,循环表达式也称为循环体B .在for 循环中,步长为1,可以省略不写;若为其他值,则不可省略C .理解for 循环关键是理解为循环变量设定初值、步长、终值D .在for 循环中,“end”控制结束一次循环,开始一次新的循环 二、填空题 6.执行下列程序:A =20;B =15;A =A +B ;B =A -B ;A =A*B ;B =A +B ;print (%io (2),B );运行结果为________.7.执行下面的程序语句,输入a =3,b =-1,n =4后,输出的结果是________.a =input (“a =”);b =input (“b =”);n =input (“n =”);i =1;while i<=n c =a +b ; a =b ; b =c ; i =i +1endprint (%io (2),c ); 能力提升一、选择题1.下边程序的输出结果为( ) A =8;B =7;A =A +B ;B =A -B ;C =A*B ;A =C ;print (%io (2),B ,A ); A .15,1 B .15,7 C .56,8D .120,82.若输入4,则下面程序执行后输出的结果是()A .4B .0.2C .0.1D .0.33.下面程序的作用是( )i =1;sum =0;for i =sum =sum +i ;endprint (%io (2),sum );A .求1+3+…+9+11B .求1+2+3+…+10C .求1×3×5×…×11D .求1×2×3×4×…×104.以下程序运行后的输出结果为( )A .21B .13C .17D .25二、填空题5.下列程序的运行结果是________.a =2;b =3;c =4;a =b ;b =a +c ;c =b +a ;a =(a +b +c )/2;print (%io (2),a );6.如图的程序框图所对应的程序是________.7.读下面的程序,如果输出y 的值是20,则通过键盘输入的变量x 的值是________.118.下面是一个用于计算11×2+12×3+13×4+…+120×21的程序,试填上适当的语句.9.如果以下的程序运行的结果为240,那么在程序中while 后面的“表达式”应为i>________.三、解答题10.设计一个程序,输入一个学生的成绩S ,根据该成绩的不同值作以下输出:若S <60,则输出“不及格”;若60≤S ≤90,则输出“及格”;若S >90,则输出“优秀”.11.铁路运输托运行李,从甲地到乙地,规定每张客票托运费计算方法是:行李重量不超过50kg 时,按0.25元/kg ;超过50kg 而不超过100kg 时,其超过部分按0.35元/kg ;超过100kg 时,其超过部分按0.45元/kg.编写程序,输入行李重量,计算并输出托运费用.。