请高手给做2个VB编程题

来源:百度知道 编辑:UC知道 时间:2024/06/04 00:43:00
1。编写程序,打印如下的乘积表:
* 3 6 9 12
15 ...............
16 ...............
17 ...............
18 ...............

2。一个两位的正整数,如果将它的个位数字与十位数字对调,则产生另一个正整数,我们把后者叫做前者的对调数。现给定一个两位的正数,请找到另一个两位的正整数,使的这两位正整数之和等于它们各自的对调之和。例如,12+32=23+21。编写程序,把具有这种特征的一对两位正整数都找出来。下面是其中的一种结果:
56+(10)=(1)+65 56+(65)=(56)+65
56+(21)=(12)+65 56+(76)=(67)+65
56+(32)=(23)+65 56+(87)=(78)+65
56+(43)=(34)+65 56+(98)=(89)+65
56+(54)=(45)+65

'需文本框:Text1:MultiLine 属性应设为 TRUE,ScrollBars 属性应设为 3
Private Sub Command1_Click()
Dim I As Long, J As Long, m As Long, n As Long, nStr As String
For I = 0 To 9
For J = 0 To 9
For m = 0 To 9
For n = 0 To 9
If (I + m) * 10 + J + n = (J + n) * 10 + I + m Then
If I + J <> 0 And m + n <> 0 Then
nStr = nStr & I * 10 + J & "+" & m * 10 + n & "=" & n * 10 + m & "+" & J * 10 + I & vbCrLf
End If
End If
Next
Next
Next
Next
Text1.Text = nStr
End Sub

Private Sub Command2_Click()
Dim a, b, I As Long, J As Long
a = Array(3, 5, 9, 12): b = Array(15, 16, 17, 18)
Me.Cls: Me.AutoRedraw = True
Me.Print " *"
For I = 0 To 3
Me.CurrentX = 0: Me.CurrentY = (I + 1) * 450
Me.Print b(I)
For J = 0 To 3
If I = 0 Th