助力期末🤞
1、累加
'-------------------------------------------------------
'题目:编写程序,当单击窗体时求1~100中既是5的倍数
’ 又是7的倍数的数的和。其中Sum为累加和变量,
’ i为循环控制变量,并在窗体上输出累加结果。
'-------------------------------------------------------
Sum = 0
For i = 1 To 100
IF i Mod 5 = 0 And i Mod 7 = 0 Then
Sum = Sum + i
End If
Next i
Print "Sum= "; Sum
2、累加
'-------------------------------------------------------
'题目: (事件)单击窗体。
’ (响应)已知sum=1-1/4+1/9-1/16+1/25…-1/100,
’ 请将sum结果值输出到窗体上。
’ 使用for…next语句完成程序
'-------------------------------------------------------
Dim i As Integer
For i = 1 To 10
Sum = Sum + (-1)^(i -1)/(i*i)
Next
Print Sum
3、偶数之积
'-------------------------------------------------------
'题目:编写函数fun,函数的功能是:求1到m
’ 之间的偶数之积。
'-------------------------------------------------------
Dim y As Double
y = 1
Dim i As Integer
For i = 1 To m
If i Mod 2 = 0 Then
y = y * i
End If
Next
fun = y
4、最大公约数
'-------------------------------------------------------
'以下程序段采用递归的方法计算最大公约数。
'单击“计算”按钮时,窗体上输出两个文本框中数字的最大公约数。
'-------------------------------------------------------
Public Function gcd(x As Integer, y As Integer) As Integer
If (x Mod y) = 0 Then
gcd = y
Else
gcd = gcd(y, x Mod y)
End If
End Function
5、计算最大公约数
'-------------------------------------------------------
'题目:编写函数fun,函数的功能是:计算两个正整数的
'最大公约数,并显示。如:
'两个数为15、20,结果显示"5"
'要求使用Do … Loop语句来实现。
'-------------------------------------------------------
If m > n Then r = m : m = n : n = r
Do
r = m Mod n
If r = 0 Then Exit Do
m = n
n = r
Loop
fun = n
6、累加
'-------------------------------------------------
'题目: (事件)单击窗体。
’ (响应)求从100到1000之间所有是3的倍数的数之
’ 和,当和大于3000时,停止计算并输出和。请将结果输
’ 出到窗体上,并存入所给变量SUM中。使用for…next语
’ 句完成程序
'-------------------------------------------------
Dim i As Integer
sum = 0
For i = 100 To 1000
If i Mod 3 = 0 Then
sum = sum + i
If sum > 300 Then
Exit For
End If
End If
Next
Print sum
7、布尔判断
'-------------------------------------------------
'题目::编写函数fun其功能是:判断一个整数w的个位
’ 数字平方之和能否被5整除 , 可以被5整除则返
’ 回True , 否则返回False
'-------------------------------------------------
Dim k As Integer, s As Integer
Do
s = s + (w Mod 10) * (w Mod 10)
w = Int(w / 10)
Loop While w <> 0
If s Mod 5 = 0 Then
fun = True
Else
fun = False
End If
8、字出现的频率
'-------------------------------------------------------
'题目:文件检验中,经常要统计一段文字中某些字出现的频率。
’ 如图所示,编一程序,统计文本框输入的一段文字中"我"
’ “的”“计”“照”"是"几个字出现的频率,并将结果显示在图片框中。
'-------------------------------------------------------
Option Base 1
Private Sub Command1_Click()
Picture1.Cls
word = Array("我", "的", "计", "照", "是")
Dim num(5) As Integer
le = Text1.Text
'**********SPACE**********
lenth = Len(le) //重点
For j = 1 To UBound(word)
For i = 1 To lenth
'**********SPACE**********
c = Mid(le, i, 1) //重点
If c = word(j) Then num(j) = num(j) + 1
Next i
Picture1.Print " ' "; word(j); " ' "; "字出现"; num(j); "次"
Next j
End Sub
9、解题重点
9.1 随机数
fact = Int (100 * Rnd + 1) (100 以内的随机数)
9.2 10个随机数
For i = 1 To 10
a(i) = Int(Rnd * 100)
Picture.Print a(i);
Next i