利用计算机程序(VB)解决古代数学问题“鸡兔同笼”.利用计算机解决古代数学问题“鸡兔同笼”.即已知在同一个笼子里有总数为m只鸡和兔,鸡和兔的总角数为n只,求鸡和兔各有多少只?【提示】不要求出一些荒唐的解,如只数为小数,或者是负数.即输入的总脚数必须是偶数,并且脚数应该是头数的倍数.
2019-03-31
利用计算机程序(VB)解决古代数学问题“鸡兔同笼”.
利用计算机解决古代数学问题“鸡兔同笼”.即已知在同一个笼子里有总数为m只鸡和兔,鸡和兔的总角数为n只,求鸡和兔各有多少只?
【提示】不要求出一些荒唐的解,如只数为小数,或者是负数.即输入的总脚数必须是偶数,并且脚数应该是头数的倍数.
优质解答
Private Sub Command1_Click()
Dim ChengLi As Boolean
Dim m As Integer,n As Integer,i As Integer
ChengLi = False
Line1:
m = InputBox("输入鸡兔总数")
If m < 1 Then
MsgBox "输入错误,请重新输入"
GoTo Line1
End If
Line2:
n = InputBox("输入鸡兔总脚数")
If n < 1 Or n Mod 2 0 Then
MsgBox "输入错误,请重新输入"
GoTo Line2
End If
For i = 1 To m
If i * 2 + (m - i) * 4 = n Then
ChengLi = True
MsgBox i & "只鸡" & vbCrLf & m - i & "只兔"
Exit For
ElseIf i = m And ChengLi = False Then
MsgBox "输入的数量不成立"
End If
Next
End Sub
Private Sub Command1_Click()
Dim ChengLi As Boolean
Dim m As Integer,n As Integer,i As Integer
ChengLi = False
Line1:
m = InputBox("输入鸡兔总数")
If m < 1 Then
MsgBox "输入错误,请重新输入"
GoTo Line1
End If
Line2:
n = InputBox("输入鸡兔总脚数")
If n < 1 Or n Mod 2 0 Then
MsgBox "输入错误,请重新输入"
GoTo Line2
End If
For i = 1 To m
If i * 2 + (m - i) * 4 = n Then
ChengLi = True
MsgBox i & "只鸡" & vbCrLf & m - i & "只兔"
Exit For
ElseIf i = m And ChengLi = False Then
MsgBox "输入的数量不成立"
End If
Next
End Sub