admin 管理员组文章数量: 1086019
2024年3月27日发(作者:手机出现error是什么意思)
2016年第20期
信息与电脑
China Computer&Communication
教学与教育信息化
VB语言中输出杨辉三角的教学方法
姜金林
(福建省长汀县职业中专,福建 龙岩 366300)
摘 要:
杨辉三角的输出是VB语言程序设计中的经典的例题之一,也是中职升高职单招必练的题目之一,笔者从实
例入手引入杨辉三角的输出方法,通过数组找到规律,并扩展到输出N行的情况,最后谈到了杨辉三角输出方法的改进。
关键词:
VB语言程序设计;杨辉三角;数组
中图分类
号:TP312.1 文献标识码:A 文章编号:1003-9767(2016)20-225-02
1 引言
随着计算机技术的飞速发展,特别是WINDOWS操作
系统的发展,程序设计语言发生了巨大的变化和深刻的变
革。从BASE语言到今天的VISUAL BASIC,从C语言到
VISUAL C++,从DBASE到VISUAL FOXPRO,以及JAVA
语言等,功能变得更加强大,学习和使用变得更加容易。
VISUAL BASIC是当前先进的可视化软件开发工具之
一,它既继承了BASIC语言简单易学的优点,又引入了面
向对象和事件驱动机制等先进的程序设计思想。VISUAL
BASIC程序设计的主要思想是使用现有的部件组装应用程
序。因此,用VISUAL BASIC开发WINDOWS应用程序的
效率是非常高的,它使普通的计算机程序设计人员开发较大
型的WINDOWS应用程序成为可能。本文以二维数组中经
典例题杨辉三角的输出为例,来探讨新的教学法。
输出杨辉三角是将一系列数据按照其特点依次放到一
个二维数组当中,然后将其按行输出的过程。其基本思想是:
给定的二维数组每行的第1个数和最后一个数的值为1,从
第3行开始,除上面指出的第一个数和最后一个数外,其
余各数是上一行同列和前一列两个数之和。由于老师的教
学风格不同,教学方法也不同,有的是将杨辉三角的思想
列出,然后写出程序来讲解该程序是如何实现的。这样理
解程度会大一点。但对于VB程序掌握熟练的学生来说,效
果是不错的。据多年来带中职生参加高职单招的经验,笔
者从另一个角度来带领学生掌握杨辉三角的输出方法,教
学反馈良好。
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
先打印输出杨辉三角的前6行,这里有个二维数组A(6,
6)用来存放杨辉三角的前6行数据(数组A的行下标和列
下标都从0开始)
第一步:根据杨辉三角的特点(每行的列数与该行的行
标相等)先把数组A每行第一个数和最后一个数设为1,代
码如下。
For i=0 to 6
A(i,1)=1
A(i,i)=1
Next i
第二步:由于杨辉三角其各数是上一行和前一列两个数
之和,因此,可以通过以下代码求出其他的数。
For i=3 to 6
Next i
For i=0 to 5
Next i
Dim a(5, 5) As Integer
For j=0 to i
Next j
Print `每输出一行就换一行
For i=1 to i
Next j
A(I,j)=A(i-1,j)+A(i-1,j-1)
第三步:输出数组A中值,代码如下。
2 输出杨辉三角的思想
本程序是打印杨辉三角形,杨辉三角形的行数由键盘输
入。所谓杨辉三角形,是指整体结构是一个三角形,第一列
和对角线上的所有元素的值都为1,其余元素的值是在该元
素的上一行当中,前一列和同一列的元素之和。下面是一个
6行的杨辉三角形的图示。
Print A(I,j);
由上面的程序段可知,输出杨辉三角前六行的程序如下:
作者简介:
姜金林(1978-),男,福建长汀人,本科,讲师。研究方向:计算机教学。
— 225 —
教学与教育信息化
Dim i, j As Integer
A(0, 0) = 1
A(1, 0) = 1
A(1, 1) = 1
For i = 1 To 5
A(i, 0) = 1
A(i, i) = 1
For j = 1 To 5
信息与电脑
China Computer&Communication
2016年第20期
For j = 0 To i
Print A(i, j);
Next j
Next i
4 输出杨辉三角方法的改进措施
以上的程序只用到了双重循环,而且每次运行的杨辉三
角都显示在同一窗口中,这样执行起来界面不太整洁。为了
提高程序的执行效率,现修改程序如下:
Dim A() As Long
Dim N As Integer
N = Val(InputBox("请输入你要显示的杨辉三角形的行
数","输入"))
If N > 0 Then
ReDim A(1 To N, 1 To N) As Long
For i = 1 To N
For j = 1 To i
If j = 1 Or j = i Then
A(i, j) = 1
Else
A(i, j) = A(i - 1, j) + A(i - 1, j - 1)
End If
Print A(i, j);
Next
Next
Else
MsgBox "请重新输入一个有效的行数:"
End If
采用以上的教学方法能让学生领会到学习VB语言的乐
趣,极大提高学生学习的积极性,可以达到举一反三的效果,
增强学生独立思考问题的能力。
A(i, j) = A(i - 1, j - 1) +A(i - 1, j) `其余各数是上一行同
列和前一列两个数之和
Next j
Next i
For i = 0 To 5
For j = 0 To i
Print A(i, j);
Next j
Print `每输出一行就换一行
Next i
3 输出N行杨辉三角的思想
若要输出N行杨辉三角,则应在程序的开始处定义
一个符号N,用来表示二维数组的行号和列标。语名为:
N=Val(InputBox("请输入你要显示的杨辉三角形的行数","
输入")),N值可以根据程序的需要而改变。
输出N行杨辉三角的程序如下:
Dim N As Integer
Dim A() As Integer
Dim i, j As Integer
N = Val(InputBox("请输入你要显示的杨辉三角形的行数
","输入"))
ReDim a(N, N) As Integer
A(0, 0) = 1
A(1, 0) = 1
A(1, 1) = 1
For i = 2 To N
A(i, 0) = 1
A(i, i) = 1
For j = 1 To i - 1
A(i, j) = A(i - 1, j - 1) +A(i - 1, j)
Next j
Next i
For i = 0 To N - 1
5 结 语
在高职单招教学当中,VB语言这门课占了专业分的
40%,即120分,学生因为有升学压力,想去学好,但因为
基础薄弱,部分学生畏惧英语,所以往往开始积极后面消极。
在VB语言的教学过程当中教师应注重激发学生学习的积极
性,让学生感觉学VB语言不难,从而对该门课程产生兴趣。
同时,教师应给学生布置适当的任务,以培养学生独立思考
的能力。
— 226 —
版权声明:本文标题:VB语言中输出杨辉三角的教学方法 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1711548716a599423.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论