




已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
QBASIC文本作图利用二维表格进行数学分析教学方法初探【摘要】:程序设计在对口单招高考中不管是综合理论还是技能考核中都占有较大的比重。QBASIC作图部分是近些年对口单招程序设计试题取材的重点和热点,常常是年年考、年年新。掌握好这类作图题的解题技能,是合理、灵活掌握程序设计思想的体现,提高考试得分的关键。针对这类试题,笔者采用了二维表格数学分析的教学方法,总结了如下的解题步骤:第一步,确定行数;第二步,列表;第三步,确定列块(个数)、位置及内容;第四步,进行数学推导,计算相关循环;第五步,整理图表,写出程序源代码。【关键词】:QBASIC程序设计、循环、程序源代码一般来说,程序设计=数据结构+算法。我们在处理文本作图题的程序设计任务中,由于文本作图题是一些有规律性的图形,常常需要用到循环。所谓循环是指对同一个程序段重复执行若干次。被重复的执行部分(由若干语句组成)称为循环体。文本作图类问题由于图形已经定型,所以此类习题属于“计数型”循环,循环次数已经确定,难点就在于了对循环控制算法是如何实现?笔者在教学中主要采用二维表格数学分析方法,具体教学步骤如下:例1:编写一个程序,使计算机打印输出下图所示的图形* * * *分析:由于此类题目采用了二维表形式,所以通过外循环确定打印的行数,内循环确定每行打印的块数(个数)。另外,程序中还要确定每行第一个图形的位置。采用二维表格数学分析法:第一步:确定行数 5第二步:列表行数(i)列数(j)位置内容12345关于(i)的数学表达式第三步:确定列块(个数)、位置及内容行数(i)列数(j)位置内容1130*2329*3528*4727*5926*关于(i)的数学表达式第四步:进行数学推导,计算相关循环经过观察上表,得到列数的关于i数学表达式为:2i-1;位置的关于i的数学表达式为31-i;内容是“*”。第五步,整理图表,写出程序源代码行数(i)列数(j)位置内容1130*2329*3528*4727*5926*关于(i)的数学表达式2i-131-i个数和列一致通过多重循环结构,可以写出下面程序源代码:FOR i = 1 TO 5 行数(i) PRINT TAB(30 i); 位置 FOR j= 1 TO 2*i-1 列数(j) PRINT “*”; 内容 NEXT PRINTNEXTEND点评:这类题目在编写程序时,首先列出已知条件的表格,行数已经确定,在二维表格中填好相关的已知量,然后利用二维表格进行数学分析,求出关于(i)的数学表达式,可以很方便地得出每一行中图形的个数与行数i的关系和每行第一个图形的位置与行数i的关系。在考虑了列和内容之间的关系后根据二维表格所示可以很方便地写出程序源代码。例2:利用多重循环打印以下图形A AB ABCABCD ABC AB A分析:由于此类题目是一个关于X轴对称文本作图的题目,利用二维表格进行数学分析时,行数应从-3到3,另外注意每一行中图形的个数和每一行的第一个图形的位置与循环控制变量i的绝对值有关。文本中每行的图形是有规律变化的字母,它的ASCII码值与使用的内循环变量的变化有一定的关系,因而我们可以用内循环变量来表示图形中字母的ASCII码值。采用二维表格数学分析法:第一步:确定行数 7第二步:列表行数(i)列数(j)位置内容-3-2-10123关于(i)的数学表达式第三步:确定列块(个数)、位置及内容行数(i)列数(j)位置内容-3130A-2229AB-1328ABC0427ABCD1328ABC2229AB3130A关于(i)的数学表达式第四步:进行数学推导,计算相关循环经过观察上表,得到列数的关于i数学表达式为:4-|i|;位置的关于i的数学表达式为27+|i|;内容是ASCII+列数。第五步:整理图表,写出程序源代码行数(i)列数(j)位置内容-3130A-2229AB-1328ABC0427ABCD1328ABC2229AB3130A关于(i)的数学表达式4-|i|27+|i|CHR$(65+j-1)通过多重循环结构,可以写出下面程序源代码:FOR i = -3 TO 3 行数(i) PRINT TAB(27+ABS(i)); 位置 FOR j= 1 TO 4-ABS(i) 列数(j) PRINT CHR$(64+j); 内容 NEXT PRINTNEXTEND点评:文本作图类的题目包括的范围很广,从图形形状上分析,有简单的图形和关于轴对称图形,此时行数一般情况下采用负整数到正整数进行数学分析;从图形中的字符看,有固定字符、有数字图形和变化的字符,采用列和内容之间的数学表达式分析,这样有利于内容和列数之间产生数学关系表达式。下面我们演示了图形中字符的变化和图形形状变化的方法。因此,通过例2的研究分析,通过利用二维表格,学生可以自主分析以下图形。(图形字符变化类)5 454345432345432 34543 454 51 121123211234321 12321 121 1学生通过二维表格数学分析可以得到以下结论:行数(i)列数(j)位置内容1内容2-3-0 到03015-2-1 到129121454-1-2 到22812321345430-3 到327123432123454321-2 到22812321345432-1 到1291214543-0 到03015关于(i)的数学表达式|i|-3到3-|i|27+|i|1+j5-|j|因此可以方便地得到如下二个程序源代码:FOR i = -3 TO 3 行数(i) PRINT TAB(27+ABS(i)); 位置 FOR j= ABS(i)-3 TO 3- ABS(i) 列数(j) PRINT LTRIM$(STR$(1+j); 内容 NEXT PRINTNEXTENDFOR i = -3 TO 3 行数(i) PRINT TAB(27+ABS(i)); 位置 FOR j= ABS(i)-3 TO 3- ABS(i) 列数(j) PRINT LTRIM$(STR$(5-ABS(j); 内容 NEXT PRINTNEXTEND点评:字符型的变换通过二维表格数学分析可以使人思路活跃,思维敏捷,办法多而新颖,能提出大量可供选择的方案、办法或建议,特别能提出一些别出心裁,完全出于意料的新鲜见解,使问题奇迹般地得到解决。例3:(2005年高考题)试编程实现由键盘输入行数n(n13),则生成n行字符组成的山字形图案,如下图如示,要求底部字符紧密相连。例如当n=4时生成的图案为:(图形形状变化类) A A A AAA AAA AAA AAAAA AAAAA AAAAAAAAAAAAAAAAAAAAAAAAAA分析:本题是2005年的高考题,外循环可以确定为1到n,即控制输出图形的行数的循环已经确定。以4为例采用二维表格数学分析法:第一步:确定行数 4第二步:列表行数(i)列数(j)块个数/块块位置图形开始位置(B)内容1234(n)关于(i)的数学表达式第三步:确定列块(个数)、位置及内容行数(i)列数(j)块个数/块块位置图形开始位置(B)内容13127 34 4127A23226 33 4026AAA33325 32 3925AAAAA4(n)3724 31 3824AAAAAAA关于(i)的数学表达式第四步:进行数学推导,计算相关循环经过观察上表,可以看出,外循环已经给出,即控制输出图形的行数为n,下面我们要重点考虑的问题是每个图案中每行首字符的位置,每行字符的数量,由三个相同的独立的图形构成。对于每个图案中的每行首字符的位置的表达式的确定是本题的重点,也是难点。处理的方法是二维表格出每行首字符的位置,然后根据三个图案中的位置再确定中间图形和右边图形每行的首位置。然后再计算出数学表达式。第五步:整理图表,写出程序源代码行数(i)列数(j)块个数/块(K)块位置图形开始位置(B)内容13127 34 4127A23226 33 4026AAA33325 32 3925AAAAA4(n)3724 31 3824AAAAAAA关于(i)的数学表达式j=32i-1BB+7B+2n-131-431-n根据块数生成通过多重循环结构,可以写出下面程序源代码:INPUT nFOR i=1 TO n 行数(i)B=31-n 设定图形开始位置(B)FOR j = 1 TO 3 块数(j) PRINT TAB(B); 位置 FOR k= 1 TO 2i-1 列数(j) PRINT “A”; 内容 NEXT B=B+2*n-1 重设块位置NEXTPRINT NEXTEND点评:上面的例子是图形变化的典型,学生只要按照二维表格数学分析法,列出表格,写出关系表达式,就可以很方便地采用多重循环结构编写,使得程序结构清晰,容易理解。当然,有些题目是关于图形形状变化和图形字符变化综合起来研究的。如编程打印下图: A A A AB AB AB ABC ABC ABCABCD ABCD ABCD有兴趣的读者可以通过二维表格数学分析法进行研究。总之,教师在定位教学目标时就要充分体现以学生为主体的教学原则。教学问题的提出,要由浅入深、循序渐进、逐层深入。让图形形状变化和图形字符变化有机综合,利用二维表格数学分析法分析研究,是帮助学生理解知识、掌握技能、解决文本作图题的重要手段,这样,教师在教学时,由于上述各图形程序相互联系,在打印完
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论