十一、
某班
30
个人,在开新年联欢会时,全班按学号从
1
排到
30
,围成一个圆圈。大家商定从
1
号开始报数,报到
5
,出来演个节目,演过节目的同学,不再参加报数。然后接着报数。试编程输出最后演节目的同学的学号。
答:
源程序:
Private Sub Command1_Click()
Dim i As Integer, a(1 To 30) As Integer, js As Integer
Dim idx As Integer, s As String, sum As Integer
Text1 = ""
For i = 1 To 30
a(i) = 1
Next i
js = 0
idx = 0
Do While js < 30
sum = 0
Do While sum < 5
idx = idx + 1
If idx > 30 Then idx = idx Mod 30
sum = sum + a(idx)
Loop
a(idx) = 0
If Len(CStr(idx)) = 1 Then s = s & " "
s = s & Str(idx) & " "
js = js + 1
If js Mod 10 = 0 Then s = s & vbCrLf
Loop
Text1 = s & vbCrLf & "最后演节目的同学的学号为:" & idx & "号"
End Sub
Private Sub Command2_Click()
End
End Sub
十二、
求守形数:
某数的平方其底位与该数本身相同,则称该数为守形数。
求
2
——
1000
中的守形数。
例如:
25*25=625
,
625
的底位
25
相同,称
25
为守形数。
答:
源程序:
Private Sub Command1_Click()
Dim i As Integer, s As Long
Dim j As Integer, k As Integer
For i = 2 To 1000
s = CLng(i) * i
j = Len(CStr(i))
k = Int(Right(CStr(s), j))
If k = i Then Text1.Text = Text1.Text & i & " "
Next i
End Sub
Private Sub Command2_Click()
End
End Sub
posted on 2006-09-29 15:07
木子李 阅读(306)
评论(0) 编辑 收藏 引用 网摘 所属分类:
Visual Basic 课堂