QBasic语言程序设计.docx
- 文档编号:16650622
- 上传时间:2023-07-16
- 格式:DOCX
- 页数:47
- 大小:182.51KB
QBasic语言程序设计.docx
《QBasic语言程序设计.docx》由会员分享,可在线阅读,更多相关《QBasic语言程序设计.docx(47页珍藏版)》请在冰点文库上搜索。
QBasic语言程序设计
高中信息技术(选修1)——算法与程序设计
QBasic语言程序设计
教学设计
学情分析
本学期是高一年级第二学期,经过前一学期的学习,学生已经学习了有关微机的基本操作,了解了因特网的应用,掌握了获取信息的途径、方法、能够具有针对性地获取信息,会使用Word2003制作校园小报,能使用Excel2003对数据进行简单处理等。
本模块的教学任务是使学生学会QBasic,让学生掌握一些常用的程序设计,使学生了解进而掌握有关QBasic的操作,同时教育学生爱护学校公共财物,按操作规程进行操作,培养学生严肃认真的态度。
过程与方法中通过学生的动手实践,操作、合作、探究、分享发现的快乐,积极引导学生自主参与知识的构建,从而高效的使知识得到掌握,激发学生对信息技术学习的持久兴趣,挖掘微机特长生,发展这些孩子在微机上的爱好,在深度与广度上加深他们的知识。
算法是解决问题的思路和方法,本模块的学习目的是使学生在原有的基础上进一步体验算法思想,了解算法和程序设计在解决问题过程中的地位和作用。
学习算法的目的,是通过构造算法,利用编程技术,能够把对问题及其解法的认识用编程语言正确地表达出来,最终产生一个能够在计算机上执行的程序。
通过本模块的学习,学生可以加深对算法基本概念的理解,将数学中的算法与计算机技术建立联系,形式化地表示算法,自己动手设计算法并在计算机上实现算法,解决身边简单问题,提高算法思维能力及信息素养。
学时分配表
章节内容
总学时
理论学时
上机学时
第1章算法基础知识
2
2
第2章初识QBASIC
2
1
1
第3章顺序结构程序设计
§3—1程序设计准备
§3—2输入、输出语句
3
3
第4章选择结构程序设计
§4—1条件语句
§4—2SELECTCASE语句
4
1
3
第5章循环结构程序设计
§5—1循序渐进
§5—2WHILE—WEND语句
§5—3DO---LOOP语句
§5—4循环嵌套
5
1
4
综合设计
2
2
总计
18课时
第一章算法基础知识
一、教学目标
1.理解算法的概念;
2.知道两种算法的描述方法—语言描述法和流程图的区别
3.能初步利用算法解决简单的问题。
4.培养学生的理论联系实际能力和动手操作能力。
二、教学重难点
1.重点:
算法的描述
2.难点:
算法的描述
四、教学方法
讨论、讲解、操作相结合。
五、教具:
多媒体电脑配合课件
六、教学过程
(一)算法的概念
【教师】请同学们将下面问题的解决步骤写出来
【问题1】两个大人和两个小孩一起渡河,渡口只有一条小船,一次只能渡过一个大人或两个小孩,他们四人都会划船,但都不会游泳。
请写一写你的渡河方案。
〖学生〗学生讨论回答。
【问题2】展示课件:
写出求一元二次方程ax2+bx+c=0的实数根的解题步骤。
〖学生〗学生讨论回答。
【答案展示】
【问题3】如果让计算机来解决这个问题应该怎么做呢?
〖学生〗学生讨论回答。
【答案展示】
1、让计算机根据a、b、c的值,求出△(delta);
2、让计算机判断△(delta)的值;
3、让计算机求出x1;
4、让计算机求出x2。
5、让计算机输出x1、x2的值
【教师】由此可以知道,计算机解决问题和人解决问题一样需要有清晰的解题步骤。
而对于计算机而言,这种解题步骤就称为算法。
【课件展示】算法的概念:
我们解决问题都需要遵循一定的方法和思路并正确的列出各个求解步骤。
计算机解决问题的求解步骤叫做算法。
或:
计算机处理程序的过程与我们平时解决问题的过程是十分相似的,也就是在规定的条件下完成一定的操作序列。
而这样的操作序列对于计算机而言就是算法。
美国著名计算机科学家克努特教授(D.E.Knuth)提出了“计算机科学就是研究算法的科学”的著名论断
二、算法的描述
1、语言描述
【算法描述1】描述交换两个杯中液体的算法
〖学生〗学生讨论
【课件展示】动态显示交换过程。
并展示文字描述。
【算法描述2】交换两个变量中的数据。
【教师】讲解计算机内部对于数据存储的原理。
即按地址保存。
〖学生〗学生讨论
【课件展示】展示文字描述。
并配以教师的讲解分析。
已知变量x和y中分别存放了数据,现在要交换其中的数据。
为了达到交换的目的,需要引进一个中间变量m,其算法如下:
①将x中的数据送给变量m,即x→m;
②将y中的数据送给变量x,即y→x;
③将m中的数据送给变量y,即m→y。
【算法描述3】输入三个不相同的数,求出其中的最小数。
〖学生〗学生讨论
【教师】引导学生讨论解题思路:
先设置一个变量min,用于存放最小数。
当输入a、b、c三个不相同的数后,先将a与b进行比较,把小者送给变量min,再把c与min进行比较,若c 【课件展示】展示文字描述。 【教师】引导学生讨论语言描述的特点: 易于理解和接受。 但对于复杂的问题描述太麻烦。 【教师】请说出下面这句话的含义: “这个人连老张也不认识” 〖学生〗学生讨论回答 【教师】由此可以看出语言描述有时有岐义,但计算机解决问题时每一步必须有清楚的定义,不能有二义性或模棱两可的解释,我们可以用另外一种方法来描述算法 2、流程图 【课件展示】算法2、3的描述流程图: 【课件展示】 流程图的概念: 流程图是用一组几何图形表示各种类型的操作,在图形上用简明扼要的文字和符号表示具体的操作,并用带有箭头的流线表示操作的先后次序。 图形符号 名称 含义 起止框 表示算法的开始或结束 输入、输出框 表示输入输出操作 处理框 表示处理或运算的功能 判断框 用来根据给定的条件是否满足决定执行两条路径中的某一路径 流线 表示程序执行的路径,箭头代表方向 连接符 表示算法流向的出口连接点或入口连接点,同一对出口与入口的连接符内必须标以相同的数字或字母 【课件展示】算法描述方法的比较: (1)第一个算法描述方法的比较(语言描述法、流程图、程序) 【教师】引导学生讨论出算法的特点,并初步理解。 (2)第二个算法描述方法的比较(语言描述法、流程图、程序) 【教师】请同学们利用QB将这两种算法实现。 【思考题】输入三个不相同的数,求出其中的最大数。 请分别用语言、流程图、程序进行算法描述。 〖学生〗学生上机操作实践 【教师】教师辅导 【教师】总结。 第二章初识QBASIC 一、学习目标 1.了解机器语言和高级语言各自的特点。 2.了解什么是计算机程序。 3.了解程序设计的基本步骤。 二、教学重点 程序设计的基本步骤。 三、教学难点 程序设计的应用。 四、教学方法 1.演示法。 2.实践法。 五、教学手段与教学媒体 多媒体网络教室。 六、课时安排 1课时。 七、教学过程 教学内容、步骤与方法 1.机器语言和高级语言各自的主要特点 机器语言: 与计算机内部结构有关,不通用,其程序不需“翻译”可直接执行。 高级语言: 与计算机内部结构无关,通用,其程序需要“翻译”后才可执行。 2.计算机程序 用计算机语言描述的解决问题的程序。 3.程序设计的基本步骤 (1)问题分析: 对问题详细分析,弄清输入(已知)条件和要求输出的结果,明确解决问题的关键和途径。 (2)算法设计: 根据分析结果,确定解决问题的方法和步骤,并描述出来。 (3)程序实现: 根据描述的算法编写程序并上机通过。 三、应用实例 1.判断下列说法的正误 (1)机器语言是硬件而高级语言是软件。 (2)各种计算机语言编写的程序计算机都可直接执行。 解: (1)说法错误。 分析: 计算机语言都属软件,故机器语言和高级语言都是软件。 (2)说法错误。 分析: 只有机器语言编写的程序计算机可直接执行,而各种高级语言和汇编语言编写的程序都要先“翻译”成机器语言程序后执行。 2.房租收费标准为,住房面积在40m2及其以下的0.8元/m2;超过40m2的部分为2元/m2。 写出收房租的算法 解: 设住房面积为x,房租为y,那么 据上分析,收房租的算法为: (1)输入x (2)判断是否x<=40? 是则)y←0.8x,否则y←0.8×40+2(x一40) (3)输出x,y (4)结束 四、练习实践 1.单项选择题 (1)无须了解计算机内部结构就可以使用的计算机语言是()。 A.机器语言B.汇编语言C.高级语言 (2)()是计算机硬件。 A.机器语言程序B.CPUC.操作系统 (3)BASIC语言是属于()。 A.机器语言B.高级语言C.汇编语言 2.写出解决下列问题的算法 (1)输入底半径R、高H,求圆锥体的底面积S和体积V。 (2)解一元二次方程ax2+bx+c=0(设d=b2—4ac,二实根为x1、x2;要求如果d<0,那么输出“N”,表示无实根,否则求出二实根并输出)。 教学后记: 第三章顺序结构程序设计 第一节程序设计准备 一、学习目标 1.掌握进入BASIC环境的方法和输入、编辑、运行程序的方法。 2.初步掌握BASIC中的基本概念: 常量、变量、函数、表达式。 3.初步掌握输出、赋值、输入语句的格式和功能。 4.初步掌握简单顺序结构程序的设计方法。 5.理解程序的顺序结构的概念。 二、教学重点 掌握输出、赋值、输入语句的格式和功能。 三、教学难点 掌握简单顺序结构程序的设计方法。 四、教学方法 1.演示法。 2.实践法。 五、教学手段与教学媒体 多媒体网络教室。 六、课时安排 1课时。 七、教学过程 (一)、学习指导 1.BASIC中的科学记数法类似数学中的科学记数法 例如: -3.14156E+3——-3.14156×103 2.56E-2一2.56×10-2 其中E表示幂底数10,E后跟的整数为幂指数。 2.常见标准函数 ABS(x)求x的绝对值,即|x| SQR(x)求x的算术平方根,即 。 SIN(x)求x的正弦值C角x的单位必须是弧度,l°≈3.14159/180)。 COS(x)求x的余弦值(规定同上)。 INT(x)求不大于x的最大整数。 注意: x为负数时,其值不是去掉小数,例INT(一5.99)≠一5。 INT(X)用处很多: (1)对正数x四舍五入保留N位小数的表达式: INT(X*10^N+0.5)/1O^N 例如: 对正数x四舍五入保留两位小数的表达式: INT(X*100+0.5)/100 (2)判断整数A能被整数B整除的条件关系式: INT(A/B)=A/B (3)求整数A除以B的余数的表达式: A—INT(A/B)*B. RND(x)产生一个O到1之间的随机小数 生成(A,B)内的随机整数的表达式: INT(RND (1)*(B—A)+A) 例如: 二位随机整数的表达式: INT(RND (1)*90+10) 3.数学式和BASIC表达式的对应表示 应根据运算顺序,正确使用圆括号,且将所有符号写在同一行上。 注意乘、除、乘方运算和绝对值、算术平方根等函数在数学上与BASIC上表示的区别。 例如: 一(-b+SQR(b*b一4*a*c))/(2*a) 4.输出语句和输入语句 (1)输出语句。 格式: PRINT(输出内容) 功能: 当输出内容是数时,直接输出该数; 当输出内容是数值表达式时,先计算表达式的值,然后输出该数值; 当输出内容是字符串时,直接输出该字符串。 (2)赋值语句。 格式: LET变量=表达式 功能: 把“=”右边表达式的值赋给左边的变量。 (3)键盘输入语句 格式: INPUT变量,变量,…,变量。 功能: 程序运行到该句时,屏幕出现一个“? ”号,等待用键盘输入数据INPUT后面的变量或变量组。 5.赋值(LET)语句功能强大,用处很多,常用于构造以下 计数器例如: LETI=I+1(一般变量初值为0,即LETI=0) 累加器例如: LETs=s+x(一般变量初值为O,即LETI=0) 累乘器例如: LETT=T*x(一般变量初值为l,即LETT=1) 交换器例如: A、B存储的内容交换 LETC=A LETA=B LETB=C 6.两种提供数据的语句对比表 表5—2—1两种提供数据的语句对比表 语句 LET语句 INPUT语句 变量数 一个LET语句只能给一个变量赋值 一个INPUT语句可以给一个或一组变量赋值 赋值方式 在程序中赋值 在程序执行过程中,从键盘输入赋值 赋值内容 数据,变量和表达式 只有具体数据 运算功能 有运算功能 无运算功能 占机时间 运行后,立即出结果,占机时间少 运行后,等待从键盘输入数据,占机时间多 适合类型 ①需要赋值变量少 ②需要运算 参数灵活变化 7.程序的顺序结构 程序各语句的执行顺序是从前到后依次执行的,程序执行过程中没有分又,也没有 重复,这种结构的程序就叫顺序结构程序。 图形方式表示如下图5—2一l: 图5—2—1 图中S1、S2、…、Sn分别表示一段具体的操作内容,用一个语句或一段程序完成。 8.顺序结构的程序设计关键是把握好解决问题步骤的先后顺序,不要把依赖于上一步完成后才能进行的后一步操作前移 例如: 求半径为15的圆周长和面积。 程序1LETL=2*3.14*R LETS=3.14*R*R LETR=15 PRINTR,L,S END 运行结果: 15O0 程序2LETR=15 LETL=2*3.14*R LETS=3.14*R*R PRINTR,L,S END 运行结果: 1594.2706.5 程序2和程序l语句条数和内容相同,但顺序不同,结果不同,程序2正确。 (二)、应用实例 1.写出下列程序的运行结果 LETX=1 LETY=2 LETX=X+Y LETY=X+Y PRINT“X”,“Y” PRINTX,Y END 解: 可列变量值的变化表来确定结果。 XY l2 3(1+2)5(3+2) 由上分析,可得运行结果: XY 35 2.鸡兔同笼问题 已知鸡兔总头数为H,总脚数为F,问鸡兔各有多少只? 解: 设鸡兔各有x、Y只,则有 X+Y=H (1) 2X+4y=F (2) 由 (1)、 (2)可得: X=(4H—F)/2 Y=(F一2H)/2 算法: 1.输入H,F 2.X←(4*H—F)/2 3.Y←(4—2H)/2 4.输出x,Y 5.结束 程序: INPUTH,F LETx=(4*H—F)/2 LETY=(F一2*H)/2 PRINT“X=”;X,“Y=”;Y END 运行结果如下: ? 60,176 X=32Y=28 (三)、练习实践 1.填空题 (1)2.745E-3化为日常计数法的数是 (2)SQR(49)+ABS(一5)的值是 (3)INT(RND(50)+20)的值是 (4)数学式 对应的BASIC表达式是 (5)数学式x7+ 对应的BASIC表达式是 2.判断题 (1)X3Y、x (1)、sinx、7c都是正确的BASIC变量。 () (2)语句INPUTA;B;c是正确的。 () (3)语句LETM=3,N=5是正确的。 () (4)语句INPUTA=5是正确的。 () (5)语句LETx=x+l是错误的。 () (6)LET语句是BASIC中惟一能进行计算的语句。 () (7)下面程序运行后,显示结果是A=7,说明此时变量A的值是7。 () LETA=4 PRINT“A=”;7 END 3.单选题 (1)BASIC中100000表示为()。 A.1E+5B.E+5C.5ED.1E一5 (2)PRINTINT(10*RND (1)+1)结果是()。 A.[1,11]范围内的随机整数B.[1,10)范围内的随机整数 c.[0,10]范围内的随机整数D.[1,11]范围内的随机整数 (3)表达式A—B/3^C的运算顺序是()。 A.①一②+③/B.①一②^③/ C.①一②/③^D.①^②/③一 (4)PRINTINT(3.236*100+0.5)/100的结果是 A.3.23B.3.236C.3.24D.324 (5)程序运行的结果是()。 LETM=3 LETN=0 LETS=M*N LETN=2 PRINTS END A.0B.3C.6D.2 (6)程序运行的结果是()。 LETA=5 PRINT“A=”;A+1,A END A.A=66B.A=65 C.A=A+lAD.A=6A 4.写出下列程序的运行的结果 (1)LETX=5 LETY=3 LETS=(X+Y)/2 PRINT“S=”;S LETS=X+Y/2 PRINT“S=”;S END (2)LETX=999 LETX=ABS(X—1000) PRINT“SQR(X)=”;SQR(X) END (3)LETA=1 LETB=7 LETA=A+B LETB=A+B PRINTA,B END (4)INPUTA,B,X LETA=A+X LETB=X—B LETS=A+B+X PRINTS END ①输入1,2,3②输入3,2,1 5.编程解一元一次方程ax+b=c(a≠0) (提示: a,b,c为已知量,用INPUTa,b,c输入,x为待求量,应用已知量表示即: x=(c-b)/a) 6.编写一个计算年息、年终节余的程序 要求输入存款数、年利率,输出存款数、年息和年终节余(保留二位小数)。 解: 设存款数为x、年利率为a,年息为y,年终节余为z. 程序如下: INPUTx,a LETy=x*a LETz=x+y LET z=INT(z*100+0.5)/100 PRINT x,y,z END 教学后记: 第二节输入、输出语句 一、学习目标 1、掌握程序中常用的输入、输出语句。 2、掌握输入、输出设计方法。 3、能利用输入、输出语句解决简单的实际问题。 二、教学重点 掌握输入、输出设计方法。 三、教学难点 用输入、输出语句解决简单的实际问题。 四、教学方法 1.演示法。 2.实践法。 五、教学手段与教学媒体 多媒体网络教室。 六、课时安排 1课时。 七、教学过程: 程序的执行次序,从上到下,由一些非控制转移语句组成 一、输出语句 输出用户所需的信息 1、一般格式 PRINT[<表达式>] 表达式—常量、变量、函数 如: PRINT 2,4,6 PRINT"X=";X 显示: X=... 2、作用 (1)输出数值计算的结果 (2)输出字符串 (3)输出系统信息 3、输出格式 (1)标准格式—输出项以逗号分隔 五区—每区14列 (2)紧凑格式—输出项以分号相隔 (3)TAB(X)—第X列 定位输出,但在同一行中、TAB(X)中的X应从左到右逐渐增大。 还可利用SPACE(X)插入空格 (4)PRINT<....>, 不换行(光标到下一区) PRINT<....>; 不换行(光标在输出项后) PRINT<....> 换行 PRINT 空行 4、打印输出 LPRINT 其使用方法与PRINT相同 二、赋值语句 1、一般格式 [LET]<变量名>=<表达式> LET a=100 LET a$="BOOK" 2、作用 计算右边的表达式,将其值赋给左边变量; 主要作用: 运算。 “=”的作用于是赋值,与等于的差别 如: X=Y与Y=X不同(例P100) 3、对变量的赋值操作 (1)变量的初值为0 未赋值的变量 (2)一个变量只有一个值 变量的当前值由最后一次赋值决定 n=n+1 (3)变量值的传递 a=b b的值不变
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- QBasic 语言程序设计