1.2基本算法语句.

Slides:



Advertisements
Similar presentations
1 、谁能说说什么是因数? 在整数范围内( 0 除外),如果甲数 能被乙数整除,我们就说甲数是乙数的 倍数,乙数是甲数的因数。 如: 12÷4=3 4 就是 12 的因数 2 、回顾一下,我们认识的自然数可以分 成几类? 3 、其实自然数还有一种新的分类方法, 你知道吗?这就是我们今天这节课的学.
Advertisements

3 的倍数的特征 的倍数有 : 。 5 的倍数有 : 。 既是 2 的倍数又是 5 的倍数有 : 。 12 , 18 , 20 , 48 , 60 , 72 , , 25 , 60 ,
因数与倍数 2 、 5 的倍数的特征 绿色圃中小学教育网 扶余市蔡家沟镇中心小学 雷可心.
2 和 5 的倍数的特征 运动热身 怎样找一个数的倍数? 从小到大写出 2 的倍数( 10 个): 写出 5 的倍数( 6 个) 2 , 4 , 6 , 8 , 10 , 12 , 14 , 16 , 18 , 20 5 , 10 , 15 , 20 , 25 , 30.
2.8 函数的微分 1 微分的定义 2 微分的几何意义 3 微分公式与微分运算法则 4 微分在近似计算中的应用.
数据结构的引入. 通讯录管理 社团机构管理 校园导航管理 通讯录管理 社团机构管理 校园导航管理.
因数与倍数 2 、 5 、 3 的倍数的特 征 新人教版五年级数学下册 执教者:佛山市高明区明城镇明城小学 谭道芬.
冀教版四年级数学上册 本节课我们主要来学习 2 、 3 、 5 的倍数特征,同学们要注意观察 和总结规律,掌握 2 、 3 、 5 的倍 数分别有什么特点,并且能够按 要求找出符合条件的数。
练一练: 在数轴上画出表示下列各数的点, 并指出这些点相互间的关系: -6 , 6 , -3 , 3 , -1.5, 1.5.
10.2.switch语句.
代数方程总复习 五十四中学 苗 伟.
圆的一般方程 (x-a)2 +(y-b)2=r2 x2+y2+Dx+Ey+F=0 Ax2+Bxy+Cy2+Dx+Ey+ F=0.
18.2一元二次方程的解法 (公式法).
6.9二元一次方程组的解法(2) 加减消元法 上虹中学 陶家骏.
10.2 立方根.
四种命题 2 垂直.
常用逻辑用语复习课 李娟.
初中数学八年级下册 (苏科版) 10.4 探索三角形 相似的条件(2).
C语言实验 第一课 标题:学号+姓名.
数学建模与MATLAB 第五讲:循环结构(1) 2017/9/12.
三、课后练习1: p.24练习第一题程序 程序: INPUT “F= ”;F C=(F-32)*5/9 PRINT “C= ”;C END
1.2.1算法基本语句.
数学3(必修)—— 算 法 ALGORITHM 苏州大学数学科学学院 徐稼红
走进编程 程序的顺序结构(二).
第一单元 初识C程序与C程序开发平台搭建 ---观其大略
第二章 Java语言基础.
绿色圃中小学教育网 比例 比例的意义 绿色圃中小学教育网
在数学的天地里,重要的不是我们知道什么,而是我们怎么知道什么。     
人教版五年级数学上册第四单元 解方程(一) 马郎小学 陈伟.
第4章 PHP流程控制语句.
C语言程序设计 主讲教师:陆幼利.
6.4不等式的解法举例(1) 2019年4月17日星期三.
实数与向量的积.
1.3 算法案例 第一课时.
1.2 基本算法语句 输入语句、输出语句和赋值语句.
微机原理与接口技术 微机原理与接口技术 朱华贵 2015年11月13日.
12.2全等三角形的判定(2) 大连市第三十九中学 赵海英.
工业机器人知识要点解析 (ABB机器人) 主讲人:王老师
用计算器开方.
C语言程序设计 第一章 数据类型, 运算符与表达式 第二章 顺序程序设计 第三章 选择结构程序设计 第四章 循环控制 第五章 数组.
成绩是怎么算出来的? 16级第一学期半期考试成绩 班级 姓名 语文 数学 英语 政治 历史 地理 物理 化学 生物 总分 1 张三1 115
《计算机应用基础》 第9章 程序设计基础(二).
北师大版五年级数学下册 分数乘法(一).
第九节 赋值运算符和赋值表达式.
用穷举法设计程序 南京师范大学 教育技术系 倪佳慧
基本算法语句.
算法初步 §1.1.2 程序框图.
算法初步 §1.2.1算法基本语句.
第4课时 绝对值.
1.2基本算法语句 1.2.3循环语句.
输入语句 输出语句 赋值语句 条件语句 循环语句
多层循环 Private Sub Command1_Click() Dim i As Integer, j As Integer
9.1.2不等式的性质 周村实验中学 许伟伟.
一元二次不等式解法(1).
第15讲 特征值与特征向量的性质 主要内容:特征值与特征向量的性质.
初三VB 复习一.
第二节 函数的极限 一、函数极限的定义 二、函数极限的性质 三、小结 思考题.
認識函數.
2.3.运用公式法 1 —平方差公式.
我们能够了解数学在现实生活中的用途非常广泛
输入语句 输出语句 赋值语句 条件语句 循环语句
第三节 数量积 向量积 混合积 一、向量的数量积 二、向量的向量积 三、向量的混合积 四、小结 思考题.
鸡兔同笼(续) ——选择结构.
1.2.2条件语句.
1.4.1正弦函数、余弦函数的图象.
顺序结构程序设计 ——关于“字符串”和数值.
1.2.3 循环语句.
第二次课后作业答案 函数式编程和逻辑式编程
一元一次方程的解法(-).
3.3.2 两点间的距离 山东省临沂第一中学.
Presentation transcript:

1.2基本算法语句

【创设情境】 在现代社会里,计算机已经成为人们日常生活和工作不可缺少的工具,如:听MP3,看电影,玩游戏,打字排版,画卡通画,处理数据等等,那么,计算机是怎样工作的呢? 计算机完成任何一项任务都需要算法,但是,我们用自然语言或程序框图描述的算法,计算机是无法“看得懂,听得见”的。因此还需要将算法用计算机能够理解的程序设计语言(programming language)翻译成计算机程序。

程序设计语言有很多种。如BASIC,Foxbase, C语言,C++,J++,VB等。为了实现算法中的 三种基本的逻辑结构:顺序结构、条件结构和循 环结构,各种程序设计语言中都包含下列基本的 算法语句: 输入语句 输出语句 赋值语句 条件 语句 循环 语句 这就是这一节所要研究的主要内容——基本算法 语句。今天,我们先一起来学习输入、输出语句 和赋值语句。

1.2.1基本算法语句 ——输入语句、输出语句和赋值语句

我们知道,顺序结构是任何一个算法都离不开的基本结构。 【探究新知】 我们知道,顺序结构是任何一个算法都离不开的基本结构。 输入、输出语句和赋值语句基本上对应于算法中的顺序结构. (如右图) 计算机从上而下按照语句排列的顺序执行这些语句. 语句n+1 语句n 输入语句和输出语句分别用来实现算法的输入信息,输出结果的功能.

输入语句和输出语句分别用来实现算法的输入信息,输出结果的功能。 例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 PRINT x PRINT y END -----------------输入语句 ---------赋值语句 -------------------------打印语句 输出语句 -------------------------打印语句 输出语句 -------------------------表示结束

一.输入语句 输入语句的一般格式 INPUT “提示内容”;变量 说明: (1)输入语句的作用是实现算法的输入信息功能; (2)“提示内容”提示用户输入什么样的信息, 变量是指程序在运行时其值是可以变化的量; (3)输入语句要求输入的值只能是具体的常数, 不能是函数、变量或表达式; (4)提示内容与变量之间用分号“;”隔开, 若输入多个变量,变量与变量之间用逗号“,”隔开.

INPUT语句不但可以给单个变量赋值,还可以给多个变量赋值,其格式为: 注意: INPUT语句不但可以给单个变量赋值,还可以给多个变量赋值,其格式为: INPUT “提示内容1,提示内容2,提示内容3,…”;变量1,变量2,变量3,… 例如,输入一个学生数学,语文,英语三门课的成绩, 可以写成: INPUT “数学,语文,英语”;a,b,c 练一练:请你用输入语句表达课本P7和P9页程序框图中输入框中的内容. P7页: INPUT “n=”; n P9页: INPUT a, b, c

二.输出语句 输出语句的一般格式 PRINT “提示内容”;表达式 说明: (1)“提示内容”提示用户输出什么样的信息,表 达式是指程序要输出的数据; (2)输出语句的用途: ①输出常量,变量的值和字符串等系统信息。 ②输出数值计算的结果。

(3)同输入语句一样,表达式前也可以有“提示内容”. 如P9页的输出框 可以转化为输出语句: 输出S PRINT “S=”; S 〖思考〗:在课本P7页图1.1-2程序框图中的输出框的内容怎样用输出语句来表达? 参考答案: 输出框: PRINT “n is a prime number .” PRINT “n is not a prime number.”

三.赋值语句 变量=表达式 (1)赋值语句的一般格式: (2)赋值语句的作用是:先计算出赋值号右边表达 式的值,然后把这个值赋给左边的变量,使该变量的 值等于表达式的值。 (3)赋值语句中的“=”称作赋值号,与数学中的等 号的意义是不同的.赋值号的左右两边不能对换. (4)赋值语句左边只能是变量名字而不是表达式, 如:2=x是错误的;右边表达式可以是一个数据、 常量或算式;不能利用赋值语句进行代数式的 演算。(如化简、因式分解、解方程等) (5)对于一个变量可以多次赋值。

〖例2〗:编写程序,计算一个学生数学、语文、 英语三门课的平均成绩。 【例题解析】 〖例2〗:编写程序,计算一个学生数学、语文、 英语三门课的平均成绩。 分析:先写出算法,画出程序框图,再进行编程。 程序框图 程序: 开始 INPUT “Maths,Chinese,English”;a,b,c y=(a+b+c)/3 PRINT “y=”;y END 输入a,b,c 输出y 结束

分析:此程序给变量A赋了两次值.A的初值为10,第二次赋值后,初值被“覆盖”,A的值变为25,因此输出值是25. 〖例3〗:给一个变量重复赋值。 程序: A的输出值是多少? A=10 A=A+15 PRINT A END 分析:此程序给变量A赋了两次值.A的初值为10,第二次赋值后,初值被“覆盖”,A的值变为25,因此输出值是25.

〖例3〗:给一个变量重复赋值。 A=10 A=A+15 PRINT A END 程序: [变式引申]:在此程序的基础上,设计一个程序, 要求最后A的输出值是30. A=10 A=A+15 PRINT A A=A+5 END 程序:

不能!!!!!! 〖例4〗交换两个变量A和B的值,并输出交换前后 的值。 分析:引入一个中间变量X,将A的值赋予X,又将B 的值赋予A,再将X的值赋予B,从而达到交换A, B的值.(比如交换装满水的两个水桶里的水需要 再找一个空桶) 程序: INPUT A INPUT B PRINT A,B X=A A=B B=X END 问题:能否用下列赋值语句交换A,B的值? A=B B=A 不能!!!!!!

〖练习1〗:编写一个程序,要求输入一个圆的半径, 便能输出该圆的周长和面积.( π取3.14) 分析:设圆的半径为R,则圆的周长C=2πR,面积S=πR2,可以利用顺序结构中的INPUT语句,PRINT语句和赋值语句设计程序。 INPUT “R=”;R C=2*3.14*R S=3.14*R^2 PRINT “C=”;C PRINT “S=”; S END

〖练习2〗P24页T1. 程序: INPUT “F=”;F C=(F-32) 5/9 PRINT “C=”;C END *

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 〖练习3〗P24页T2. 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 * 程序:

〖练习4〗P24页T3. ABS(x)=|x|. 程序: p=(2+3+4)/2 t=p (p-2) (p-3) (p-4) S=SQR(t) PRINT “S=”;S END * 注:BASIC语言中的标准函数SQR(x),表示数x的算术平方根,ABS(x)表示x的绝对值等. ABS(x)=|x|.

〖作业1〗P24页T4. INPUT “a,b,c=”;a ,b,c X=10.4*a Y=15.6*b Z=25.2*c 程序: 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

〖作业2〗P25页A组T2. INPUT “a,b,h=”;a ,b,h p=a+b s=p*h/2 PRINT “s=”;s END 程序: INPUT “a,b,h=”;a ,b,h p=a+b s=p*h/2 PRINT “s=”;s END

【课堂小结】 (1)本节课介绍了输入语句、输出语句和赋值语句的结构特点及联系. (2)掌握并应用输入语句,输出语句,赋值语句编写一些简单的程序解决数学问题,特别是掌握赋值语句中“=”的作用及应用. (3)编程一般的步骤:先写出算法,再进行编程.我们要养成良好的习惯,也有助于数学逻辑思维的形成。

二、重点与难点 重点:正确理解输入语句、输出语句、赋值语句的作用. 难点:准确写出输入语句、输出语句、赋值语句.

1.2.2基本算法语句 ——条件语句 学习目标: 1、知识与技能 (1)正确理解条件语句的概念; (2)会应用条件语句编写程序。 2、过程与方法 经历对现实生活情境的探究,认识到应用计算机解决数学问题方便简捷,促进发展学生逻辑思维能力

3、情感态度与价值观 了解条件语句在程序中起判断转折作用,在解决实际问题中起决定作用。通过本小节内容的学习,有益于我们养成严谨的数学思维以及正确处理问题的能力。 重点与难点: 重点:条件语句的步骤、结构及功能. 难点:会编写程序中的条件语句.

条件语句是处理条件分支逻辑结构的算法语句 . 条件语句的一般格式 写成条件语句为 算法中的条件结构是由条件语句来表达的, 条件语句是处理条件分支逻辑结构的算法语句 . 条件语句的一般格式 写成条件语句为 只含一个“分支”的条件结构 满足条件? 语句 是 否 IF 条件 THEN 语句体 END IF 当计算机执行这种形式的条件语句时,首先对IF后的条件进行判断,如果条件符合,就执行THEN后的语句体,否则执行END IF之后的语句.

当计算机执行上述语句时,首先对IF后的条件进行判断,如果条件符合,就执行THEN后的语句体1,否则执行ELSE后的语句体2. 含两个“分支”的条件结构 写成条件语句为 IF 条件 THEN 语句体1 ELSE 语句体2 END IF 满足条件? 语句1 语句2 是 否 当计算机执行上述语句时,首先对IF后的条件进行判断,如果条件符合,就执行THEN后的语句体1,否则执行ELSE后的语句体2.

条件语句的作用 在程序执行过程中,根据判断是否满足约定的条件而决定是否需要转换到何处去。需要计算机按条件进行分析、比较、判断,并按判断后的不同情况进行不同的处理。

(1)当△>0时,一元二次方程有两个不等的实数根. 【例题解析】 〖例1〗:编写程序,输入一元二次方程ax2+bx+c=0的系数,输出它的实数根。 算法分析: 一元二次方程的根有三种不同情况: 设判别式△=b2-4ac (1)当△>0时,一元二次方程有两个不等的实数根. (2)当△=0时,一元二次方程有两个相等的实数根. (3)当△<0时,一元二次方程没有实数根.

【程序框图】 开始 1 2 输入a,b,c 是 △=b2-4ac 否 否 x1=p+q 是 x2=p-q 结束 1 2 △=0? △≥0? 输出x1,x2 原方程无实根 结束 1 2

【程序】 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 PRINT “No real root!” END 【程序】

〖例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.

【程序框图】 交换a,b的值 是 否 是 t=a 否 a=b t=a b=t a=c c=t 是 否 t=c c=b b=t 开始 输入a,b,c 是 b>a? 否 是 t=a c>a? 否 a=b t=a b=t a=c c=t 是 c>b? 否 t=c c=b b=t 输出a,b,c

【程序】 IF b>a THEN IF c>b THEN t=a t=b a=b b=c b=t c=t END IF INPUT “a,b,c =”;a,b,c IF b>a THEN t=a a=b b=t END IF IF c>a THEN a=c c=t IF c>b THEN t=b b=c c=t END IF PRINT a,b,c END

【课堂小结】 本节课主要学习了条件语句的结构、特点、作用以及用法,并懂得利用它解决一些简单问题。条件语句使程序执行产生的分支,根据不同的条件执行不同的路线,使复杂问题简单化。 条件语句一般用在需要对条件进行判断的算法设计中,如判断一个数的正负,确定两个数的大小等问题,还有求分段函数的函数值等,往往要用条件语句,有时甚至要用到条件语句的嵌套。

[问题]如输入的数x=86,则输出的结果是什么? 68 此程序用于交换一个两位数的个位和十位数字. 【课堂练习】 1.课本P29页T2.读程序,说明程序的运行过程. INPUT “x=:”;x IF 9<x AND x<100 THEN a=x\10 b=x MOD 10 x=10*b+a PRINT x END IF END 如果有两个或是两个以上的并列条件时,用“AND”把它们连接起来。 “\”用来取商.此处表示 x除以10的商. “MOD”用来取余数.此处表示x除以10所得余数为b. [问题]如输入的数x=86,则输出的结果是什么? 68 此程序用于交换一个两位数的个位和十位数字.

IF a+b>c AND a+c>b AND b+c>a THEN PRINT “Yes.” ELSE END IF 2.课本P29页T1. 参考答案: INPUT “a,b,c=”; a,b,c IF a+b>c AND a+c>b AND b+c>a THEN PRINT “Yes.” ELSE PRINT “No.” END IF END

3.课本P29页T3.编写求一个数是偶数还是奇数的程序,从键盘输入一个整数,输出该数的奇偶性. 参考答案: INPUT “a=”; a IF a MOD 2 =0 THEN PRINT “Even.” ELSE PRINT “Odd.” END IF END

4.课本P29页T1.闰年指年份能被4整除但不能被100整除,或者能被400整除的年份.编写一个程序,判断输入的年份是否为闰年. INPUT “Please input a year:”;y b=y MOD 4 c=y MOD 100 d=y MOD 400 IF b=0 AND c< >0 THEN PRINT “Leap year.” ELSE IF d=0 THEN PRINT “Not leap year.” END IF END 表示c≠0 参考答案:

5.(P33页A组T3)编写一个程序,输入两个整数a,b,判断a是否能被b整除. 参考答案: INPUT “a,b=”; a,b IF a MOD b =0 THEN PRINT “b divides a.” ELSE PRINT “b does not divide a.” END IF END

IF x>=1 AND x<10 THEN y=2*x-1 6.(P25页B组T2) 参考答案: INPUT “x=”;x IF x<1 THEN y=x ELSE IF x>=1 AND x<10 THEN y=2*x-1 y=3*x-11 END IF END IF PRINT“y=”;y END

1.2.3基本算法语句 ——循环语句 学习目标: 1、知识与技能 (1)正确理解循环语句的概念; (2)会应用循环语句编写程序。 2、过程与方法 经历对现实生活情境的探究,认识到应用计算机解决数学问题方便简捷,促进发展学生逻辑思维能力

3、情感态度与价值观 了解循环语句在程序中起判断转折作用,在解决实际问题中起决定作用。通过本小节内容的学习,有益于我们养成严谨的数学思维以及正确处理问题的能力。 重点与难点: 重点:循环语句的步骤、结构及功能. 难点:会编写程序中的循环语句.

直到型循环结构(反复执行循环体直到条件满足) 当型循环结构(当条件满足时反复执行循环体) 算法中的循环结构是由循环语句来实现的 . 循环结构有两种-----当型与直到型. 直到型循环结构(反复执行循环体直到条件满足) 当型循环结构(当条件满足时反复执行循环体) 循环体 是 否 满足条件? 满足条件? 循环体 是 否 对应于程序框图中的两种循环结构,一般程序设计语言中也有当型(WHILE型)和直到型(UNTIL型)两种语句结构。

即WHILE语句和UNTIL语句。 (1)WHILE语句的一般格式是: WHILE 条件 循环体 WEND WHILE——当…… 时候 WEND——朝……方向 行走 其中循环体是由计算机反复执行的一组语句构成的。WHLIE后面的“条件”是用于控制计算机执行循环体或跳出循环体的。

(1)WHILE语句的一般格式是 WHILE 条件 循环体 WEND 当计算机遇到WHILE语句时, 先判断条件的真假,如果条件 符合,就执行WHILE与WEND之间的循环体;然后再检查上述条件,如果条件仍符合,再次执行循环体,这个过程反复进行,直到某一次条件不符合为止.这时,计算机将不执行循环体,直接跳到WEND语句后,接着执行WEND之后的语句. 满足条件? 循环体 是 否 当型循环结构

LOOP UNTIL——绕环回线走,直到达到某种 条件为止 循环体 是 否 满足条件? 直到型循环结构 (2)UNTIL语句的一般格式是: DO 循环体 LOOP UNTIL 条件 DO——做什么 LOOP UNTIL——绕环回线走,直到达到某种 条件为止 思考:参照其直到型循环结构对应的程序框图,说说 计算机是按怎样的顺序执行UNTIL语句的?

从UNTIL型循环结构分析,计算机执行该语句时,先 执行一次循环体,然后进行条件的判断,如果条件不 是 否 满足条件? 直到型循环结构 (2)UNTIL语句的一般格式是: DO 循环体 LOOP UNTIL 条件 从UNTIL型循环结构分析,计算机执行该语句时,先 执行一次循环体,然后进行条件的判断,如果条件不 满足,继续返回执行循环体,然后再进行条件的判断, 这个过程反复进行,直到某一次条件满足时,不再执 行循环体,跳到LOOP UNTIL语句后执行其他语句, 是先执行循环体后进行条件判断的循环语句.

UNTIL语句的一般格式 DO 循环体 LOOP UNTIL 条件 WHILE语句的一般格式 WHILE 条件 循环体 WEND 提问:通过对照,大家觉得WHILE型语句与UNTIL型 语句之间有什么区别呢? 区别:在WHILE语句中,是当条件满足时执行循环 体,而在UNTIL语句中,是当条件不满足时执行循环 体。

例1.编写程序, 计算自然数1+2+3+…+99+100的和. 分析:这是一个累加问题.我们可以用WHILE型语句,也可以用UNTIL型语句。

当型循环结构 WHILE语句 i=1 S=0 WHLIE i<=100 S=S+i i=i+1 WEND PRINT S END 开始 结束 i=1 S=0 i=i+1 S=S+i 输出S i≤100? 是 否 当型循环结构 WHILE语句 i=1 S=0 WHLIE i<=100 S=S+i i=i+1 WEND PRINT S END

直到型 UNTIL语句 i=1 S=0 DO S=S+i i=i+1 LOOP UNTIL i>100 PRINT S END 开始 结束 i=1 S=0 i=i+1 S=S+i 输出S i>100? 否 是 直到型 UNTIL语句 i=1 S=0 DO S=S+i i=i+1 LOOP UNTIL i>100 PRINT S END

变式训练(1): 编写程序求:n!=1×2×3×4×5×……×n的值. WHILE语句 如何修改? INPUT “n=”;n i=1 S=0 开始 i=1 S=0 i≤100? 是 S=S+i i=i+1 否 输出S 结束 当型循环结构 如何修改? INPUT “n=”;n 输入n i=1 S=0 S=1 S=1 WHLIE i<=100 n S=S+i S=S*i i=i+1 S=S*i WEND i≤n? PRINT S END

变式训练(2): 编写程序求:1×3×5×7×……×101的值. 如何修改? UNITL语句 i=1 S=0 DO S=S*i S=S+i 直到型 如何修改? UNITL语句 是 开始 结束 i=1 S=0 i=i+1 S=S+i 输出S i>100? 否 i=1 S=0 S=1 S=1 DO S=S*i S=S*i S=S+i i=i+2 i=i+1 i=i+2 i>101? LOOP UNTIL i>100 101 PRINT S END

例2:根据P7页图1.1-2,将程序框图转化为程序语句. 分析:仔细观察,该程序框图中既有条件结构,又有循环结构。 INPUT “n=”;n i=2 DO r=n MOD i i=i+1 LOOP UNTIL i>=n OR r=0 IF r=0 THEN PRINT “n is not a prime number.” ELSE PRINT “n is a prime number.” END IF END 分析:仔细观察,该程序框图中既有条件结构,又有循环结构。 程序

习题解答 程序 程序框图 a=1 1.P24页练习T1. b=2 e=0.005 DO m=(a+b)/2 f=m^2-2 g=a^2-2 IF g*f>0 THEN a=m ELSE b=m END IF LOOP UNTIL ABS(a-b)<e OR f=0 PRINT m 继续 END

程序框图 开始 f(x)=x2-2 否 是 b=m a=m 否 是 返回 f(a) f(m)>0? 输入误差ε 和初值a,b 否 f(a) f(m)>0? 是 b=m a=m 否 |a-b|<ε或f(m)=0? 是 返回 输出m 结束

2.P24页练习T2. 程序 x=1 DO y=x^2-3*x+5 PRINT “x=”;x, “y=”;y x=x+1 LOOP UNTIL x>20 END

2.P24页练习T2. 程序 x=1 WHILE x<=20 y=x^2-3*x+5 PRINT x, y x=x+1 WEND END

3.P25页A组T4. 程序 INPUT “n=”;n i=1 S=0 WHILE i<=n S=S+(i+1)/i i=i+1 WEND PRINT “S=”;S END

4.P25页B组T1. 程序 n=1 p=1000 WHILE n<=7 p=p*(1+0.5) n=n+1 WEND PRINT p END

5.P40页A组T4. 程序 INPUT “n=”;n i=1 S=0 WHILE i<=n S=S+1/i i=i+1 WEND PRINT “S=”;S END

6.P40页A组T2. 程序框图 程序 INPUT a1,b1,c1,a2,b2,c2 IF a1<>0 THEN u=-a2/a1 b=b2+b1*u c=c2+c1*u y=c/b x=(c2-b2*y)/a2 ELSE y=c1/b1 x=(c2-b2*y)/a2 END IF PRINT x,y 继续 END

程序框图 开始 u=-a2/a1 b=b2+b1u c=c2+c1u y=c1/b1 y=c/b x=(c2-b2y)/a2 输出x,y 输入a1,b1,c1,a2,b2,c2 否 a1≠0? 是 u=-a2/a1 b=b2+b1u c=c2+c1u y=c1/b1 y=c/b 输出x,y 结束 x=(c2-b2y)/a2 返回

P33B组T4. 程序 INPUT “a=”;a INPUT “n=”;n tn=0 sn=0 i=1 WHILE i<=n tn=tn+a sn=sn+tn a=a*10 i=i+1 WEND PRINT sn END