逐鹿中原贴吧:各位高手帮忙编几个初级程序(用VB)

来源:百度文库 编辑:中科新闻网 时间:2024/04/27 23:46:03
第一题
编写程序求出100以内的所有素数
第二题
求2-100中的完全数(因子之和等于它本身的数为完全数 例如:28的因子是1.2.4.7.14,且1+2+4+7+14=28,则28是完全数)
第三题
年级进行数学考试,数学老师请你帮助他设计一个程序,求出各班的最高分和平均分.
第四题
编写程序,在屏幕上输出如下格式的"金字塔"
A
ABA
ABCBA
.......
.........
ABCDEFG....MNOPQRSTUVWXYXWVUTSRQPONM....CBA
ABCDEFG....MNOPQRSTUVWXYZYXWVUTSRQPONM....CBA
第五题
公元6世纪,中国的<章丘建算经>有一道著名的百鸡问题:"今有鸡翁一值钱五,鸡雏三值钱一,鸡母一值钱三,凡百钱买百鸡,问鸡翁,鸡母,鸡雏各几只?"设计一个求解的算法,用自然语言把它描述出来.
希望各位高手能够详尽列出程序语言```简单的说我看不明白啊```谢谢```我正在学VB吖``拜托``
下午就截至啦`````块啊```

练习1:编写程序求出1000以内的所有素数。
参考程序:
Private Sub Command1_Click()
Dim i As Integer, n As Integer, m As Integer
For i = 1 To 1000
For n = 2 To i - 1
If i Mod n = 0 Then Exit For
Next n
If n = i Then
Print i;
m = m + 1
If m Mod 10 = 0 Then Print '每输出10个素数后换行
End If
Next i
End Sub
练习2:求2~1000中的完全数(因子之和等于它本身的数为完全数,例如28的因子是1,2,4,7,14,且1+2+4+7+14=28,则28是完数)。
参考程序:
Private Sub Command1_Click()
For i = 2 To 1000
s = 0
For j = 1 To i - 1
If i Mod j = 0 Then
s = s + j
End If
Next j
If s = i Then Print i; "是完全数"
Next i
End Sub
练习3:年级进行数学考试,数学老师请你帮助他设计一个程序,求出各班的最高分和平均分。
参考程序:
Private Sub Command1_Click()
Dim i As Integer, j As Integer, n As Integer, m As Integer
Dim fen As Single, sum As Single, average As Single, max As Single
m = InputBox("请班级数:")
For i = 1 To m
n = Val(InputBox("请输入" + Str$(i) + "班学生人数:"))
'Str用于把数值转成字串 Val用于把字串转成数值
max = Val(InputBox("请输入" + Str$(i) + "班第1位同学的成绩!"))
sum = max
For j = 2 To n
fen = Val(InputBox("请输入" + Str$(i) + "班第" + Str$(j) + "位同学的成绩!"))
sum = sum + fen
If fen > max Then max = fen
Next j
average = sum / n
Print i; "班的最高分为"; max; "平均分为"; average
Next i
End Sub
练习4:编写程序,在屏幕上输出如下形式的“字母塔”
A
ABA
ABCBA
ABCDCBA
……
ABCDEFGHIJKLMNOPQRSTUVWXWVUTSRQPONMLKJIHGFEDCBA
ABCDEFGHIJKLMNOPQRSTUVWXYXWVUTSRQPONMLKJIHGFEDCBA
ABCDEFGHIJKLMNOPQRSTUVWXYZYXWVUTSRQPONMLKJIHGFEDCBA
参考程序:
Private Sub Command5_Click()
For i = 0 To 25
Print Space(Abs(25 - i)); 'Space 函数返回由指定数目的空格组成的字符串
For j = -i To i
Print Chr(65 + (i - Abs(j))); 'Chr 函数返回与指定的ASCII字符代码相对应的字符
Next j
Print
Next i
End Sub
练习5:公元6世纪,中国的《张丘建算经》有一道著名的百鸡问题:“今有鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一,凡百钱买百鸡,问鸡翁、鸡母、鸡雏各几何。”设计一个求解的算法,用自然语言把它描述出来。
参考程序:
Private Sub Command1_Click()
Dim a As Integer, b As Integer, c As Integer
For a = 0 To 20
For b = 0 To 33
For c = 0 To 99 Step 3
If (a + b + c = 100) And (5 * a + 3 * b + c / 3 = 100) Then Print a, b, c
Next c
Next b
Next a
End Sub

这是你的作业题吧,呵呵,想偷懒?还是把思路提供给你吧,要不然你永远也学不好程序了

第一题:什么是素数,素数就是除了一和本身外不能除尽的数字,所谓除尽,也就是整除,可以理解成x mod y=0,也可以理解成 x/y=x\y,能想通么?如果把怎么求素数的程序搞明白了,外面再套一个for i=1 to 100的循环,判断是不是素数不就可以了?

第二题:可以在第一题的思路和上扩充,如果理解了第一题,第二题应该也不难吧。给你个建议,你可以写个函数 Function IsFullnum(inNum As Integer) As Boolean 判断该数是不是完全数,然后再用一个循环调用该函数,程序看上去就漂亮很多了

第三题:想象一下生活中最高分和平均分是怎么求的?假设输入的是A,目前的最高分是B ,那么显而易见,if A>B then B=A,这样B永远是最大的数值,对么?至于平均分,再简单不过了,所有输入的数字积加,再除以一共多少数字就行了么。

第四题:算是比较经典的题目了,学VB的人都做过类似的题目吧,考验你对循环的利用能力。给你个知识点,对ABCD等有规律字符的操作,可以化成对应ASC码的操作。A是chr(65),B是chr(66)以此类推,Z是chr(90),那就把题化成
65
65 66 65
65 66 67 66 65
...
这样是不是更容易写呢?

第五题也是道经典题,如果你数学方程学得够好的话,自然不是问题了,如果学得不够好,就用笨办法,假设鸡翁一只,鸡母一只,鸡雏一只,总价对么,不对。再下去,鸡翁一只,鸡母两只,鸡雏两只,总价对么?不对,再下一个...计算机么,没别的好处,就是运算速度快,把所有的可能性都循环一下,直到总价和题意相对就行了

最后说一句,如果你真的喜欢程序的话,一定要打好算法的基础,你可以像我一样懒得动手去写,但一定要去算法搞清,这是基础,这样以后你不管是B是C还是J,才可以写出有价值的程序,这也是我一直跟想学程序的朋友强调的一点
这是你的作业题吧,呵呵,想偷懒?还是把思路提供给你吧,要不然你永远也学不好程序了

第一题:什么是素数,素数就是除了一和本身外不能除尽的数字,所谓除尽,也就是整除,可以理解成x mod y=0,也可以理解成 x/y=x\y,能想通么?如果把怎么求素数的程序搞明白了,外面再套一个for i=1 to 100的循环,判断是不是素数不就可以了?

第二题:可以在第一题的思路和上扩充,如果理解了第一题,第二题应该也不难吧。给你个建议,你可以写个函数 Function IsFullnum(inNum As Integer) As Boolean 判断该数是不是完全数,然后再用一个循环调用该函数,程序看上去就漂亮很多了

第三题:想象一下生活中最高分和平均分是怎么求的?假设输入的是A,目前的最高分是B ,那么显而易见,if A>B then B=A,这样B永远是最大的数值,对么?至于平均分,再简单不过了,所有输入的数字积加,再除以一共多少数字就行了么。

第四题:算是比较经典的题目了,学VB的人都做过类似的题目吧,考验你对循环的利用能力。给你个知识点,对ABCD等有规律字符的操作,可以化成对应ASC码的操作。A是chr(65),B是chr(66)以此类推,Z是chr(90),那就把题化成
65
65 66 65
65 66 67 66 65
...
这样是不是更容易写呢?

第五题也是道经典题,如果你数学方程学得够好的话,自然不是问题了,如果学得不够好,就用笨办法,假设鸡翁一只,鸡母一只,鸡雏一只,总价对么,不对。再下去,鸡翁一只,鸡母两只,鸡雏两只,总价对么?不对,再下一个...计算机么,没别的好处,就是运算速度快,把所有的可能性都循环一下,直到总价和题意相对就行了

最后说一句,如果你真的喜欢程序的话,一定要打好算法的基础,你可以像我一样懒得动手去写,但一定要去算法搞清,这是基础,这样以后你不管是B是C还是J,才可以写出有价值的程序,这也是我一直跟想学程序的朋友强调的一点
这是你的作业题吧,呵呵,想偷懒?还是把思路提供给你吧,要不然你永远也学不好程序了

第一题:什么是素数,素数就是除了一和本身外不能除尽的数字,所谓除尽,也就是整除,可以理解成x mod y=0,也可以理解成 x/y=x\y,能想通么?如果把怎么求素数的程序搞明白了,外面再套一个for i=1 to 100的循环,判断是不是素数不就可以了?

第二题:可以在第一题的思路和上扩充,如果理解了第一题,第二题应该也不难吧。给你个建议,你可以写个函数 Function IsFullnum(inNum As Integer) As Boolean 判断该数是不是完全数,然后再用一个循环调用该函数,程序看上去就漂亮很多了

第三题:想象一下生活中最高分和平均分是怎么求的?假设输入的是A,目前的最高分是B ,那么显而易见,if A>B then B=A,这样B永远是最大的数值,对么?至于平均分,再简单不过了,所有输入的数字积加,再除以一共多少数字就行了么。

第四题:算是比较经典的题目了,学VB的人都做过类似的题目吧,考验你对循环的利用能力。给你个知识点,对ABCD等有规律字符的操作,可以化成对应ASC码的操作。A是chr(65),B是chr(66)以此类推,Z是chr(90),那就把题化成
65
65 66 65
65 66 67 66 65
...
这样是不是更容易写呢?

第五题也是道经典题,如果你数学方程学得够好的话,自然不是问题了,如果学得不够好,就用笨办法,假设鸡翁一只,鸡母一只,鸡雏一只,总价对么,不对。再下去,鸡翁一只,鸡母两只,鸡雏两只,总价对么?不对,再下一个...计算机么,没别的好处,就是运算速度快,把所有的可能性都循环一下,直到总价和题意相对就行了

最后说一句,如果你真的喜欢程序的话,一定要打好算法的基础,你可以像我一样懒得动手去写,但一定要去算法搞清,这是基础,这样以后你不管是B是C还是J,才可以写出有价值的程序,这也是我一直跟想学程序的朋友强调的一点
这是你的作业题吧,呵呵,想偷懒?还是把思路提供给你吧,要不然你永远也学不好程序了

第一题:什么是素数,素数就是除了一和本身外不能除尽的数字,所谓除尽,也就是整除,可以理解成x mod y=0,也可以理解成 x/y=x\y,能想通么?如果把怎么求素数的程序搞明白了,外面再套一个for i=1 to 100的循环,判断是不是素数不就可以了?

第二题:可以在第一题的思路和上扩充,如果理解了第一题,第二题应该也不难吧。给你个建议,你可以写个函数 Function IsFullnum(inNum As Integer) As Boolean 判断该数是不是完全数,然后再用一个循环调用该函数,程序看上去就漂亮很多了

第三题:想象一下生活中最高分和平均分是怎么求的?假设输入的是A,目前的最高分是B ,那么显而易见,if A>B then B=A,这样B永远是最大的数值,对么?至于平均分,再简单不过了,所有输入的数字积加,再除以一共多少数字就行了么。

第四题:算是比较经典的题目了,学VB的人都做过类似的题目吧,考验你对循环的利用能力。给你个知识点,对ABCD等有规律字符的操作,可以化成对应ASC码的操作。A是chr(65),B是chr(66)以此类推,Z是chr(90),那就把题化成
65
65 66 65
65 66 67 66 65
...
这样是不是更容易写呢?

第五题也是道经典题,如果你数学方程学得够好的话,自然不是问题了,如果学得不够好,就用笨办法,假设鸡翁一只,鸡母一只,鸡雏一只,总价对么,不对。再下去,鸡翁一只,鸡母两只,鸡雏两只,总价对么?不对,再下一个...计算机么,没别的好处,就是运算速度快,把所有的可能性都循环一下,直到总价和题意相对就行了

最后说一句,如果你真的喜欢程序的话,一定要打好算法的基础,你可以像我一样懒得动手去写,但一定要去算法搞清,这是基础,这样以后你不管是B是C还是J,才可以写出有价值的程序,这也是我一直跟想学程序的朋友强调的一点

这是你的作业题吧,呵呵,想偷懒?还是把思路提供给你吧,要不然你永远也学不好程序了

第一题:什么是素数,素数就是除了一和本身外不能除尽的数字,所谓除尽,也就是整除,可以理解成x mod y=0,也可以理解成 x/y=x\y,能想通么?如果把怎么求素数的程序搞明白了,外面再套一个for i=1 to 100的循环,判断是不是素数不就可以了?

第二题:可以在第一题的思路和上扩充,如果理解了第一题,第二题应该也不难吧。给你个建议,你可以写个函数 Function IsFullnum(inNum As Integer) As Boolean 判断该数是不是完全数,然后再用一个循环调用该函数,程序看上去就漂亮很多了

第三题:想象一下生活中最高分和平均分是怎么求的?假设输入的是A,目前的最高分是B ,那么显而易见,if A>B then B=A,这样B永远是最大的数值,对么?至于平均分,再简单不过了,所有输入的数字积加,再除以一共多少数字就行了么。

第四题:算是比较经典的题目了,学VB的人都做过类似的题目吧,考验你对循环的利用能力。给你个知识点,对ABCD等有规律字符的操作,可以化成对应ASC码的操作。A是chr(65),B是chr(66)以此类推,Z是chr(90),那就把题化成
65
65 66 65
65 66 67 66 65
...
这样是不是更容易写呢?

第五题也是道经典题,如果你数学方程学得够好的话,自然不是问题了,如果学得不够好,就用笨办法,假设鸡翁一只,鸡母一只,鸡雏一只,总价对么,不对。再下去,鸡翁一只,鸡母两只,鸡雏两只,总价对么?不对,再下一个...计算机么,没别的好处,就是运算速度快,把所有的可能性都循环一下,直到总价和题意相对就行了

最后说一句,如果你真的喜欢程序的话,一定要打好算法的基础,你可以像我一样懒得动手去写,但一定要去算法搞清,这是基础,这样以后你不管是B是C还是J,才可以写出有价值的程序,这也是我一直跟想学程序的朋友强调的一点

楼上的朋友还真好人
致敬一下...