- ·上一篇:EXCEL表格里日期怎么改为
- ·下一篇:EXCEL表格三个数据该怎么做表
百钱百鸡EXCEL表格怎么做
1.如何编写出百钱买百鸡这个程序?
Dim x As Integer Dim y As Integer Dim z As IntegerDo While x <= 33 y = 0 Do While y <= 55 z = 0 Do While z <= 100 If (x + y + z = 100 And 3 * x + 2 * y + 0.5 * z = 100) Then Print x & "," & y & "," & z z = z + 1 Loop y = y + 1 Loop x = x + 1 Loop。
2.VBA编写百元买百鸡
Sub s()
Debug.Print "公鸡", "母鸡", "小鸡"
For i = 1 To 100 / 5
For j = 1 To (100 - i * 3) / 3
If 100 - i * 5 - j * 3 = (100 - i - j) / 3 Then
Debug.Print i, j, 100 - i - j
End If
Next j, i
End Sub
3.
Private Sub Form_click()
Dim m As Integer
Print "公鸡", "母鸡", "小鸡"
For i = 1 To 20 '一百元最多买20只公鸡
For j = 1 To 33 '一百元最多买33只公鸡
For k = 1 To 34 '小鸡最多不超过100只,花的钱不超过34元
If i + j + 3 * k = 100 And 5 * i + 3 * j + k = 100 Then '判断是否满足百元买百鸡的要求
Print i, j, 3 * k
m = m + 1
End If
Next k, j, i
Print "共有"; m; "种方法"
End Sub
4.百钱买百鸡(VBA)
不好意思,这两天比较忙,没来得及回你,下面是修改过的程序,你看一下,结果应该是4种,如果想要跟你的答案完全吻合,只要把下面程序中(for x=0 to 20)这句中的0换成1就可以了。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)Dim x As IntegerDim y As IntegerDim z As IntegerDim i As Integeri = 1Dim a(1 To 10) As StringFor x = 0 To 20 For y = 0 To 33 z = 100 - x - y If 5 * x + 3 * y + z / 3 = 100 Then a(i) = Str(x) & "," & Str(y) & "," & Str(z) i = i + 1 End If Next yNext xRange("a1") = a(1)Range("b2") = a(2)Range("c3") = a(3)Range("d4") = a(4) End Sub。
5.raptor求百钱百鸡问题,一个公鸡5块,一个母鸡三块,三只小鸡一块,
设公鸡X只,母鸡Y只,则小鸡(100-X-Y)吸,5X+3Y+1/3(100-X-Y)=10015X+9Y+100-X-Y=30014X+8Y=2007X+4Y=100X=(100-4Y)/7,令100-4Y=0,X=0,Y=25,100-X-Y=75,令100-4Y=7,14、21、35、42、49、63、70、77、91、98时,Y无正整数解,令100-4Y=28,X=4,Y=18,100-X-Y=78,令100-4Y=56,X=8,Y=11,100-X-Y=81,令100-4Y=84,X=12,Y=4,100-X-Y=84,∴公鸡、母鸡、小鸡分别为0、25、754、18、788、11、8112、4、84。
6.如何用C编写百钱百鸡问题
1、百钱买百鸡问题——一百个铜钱买了一百只鸡,其中公鸡一只5钱、母鸡一只3钱,小鸡一钱3只,问一百只鸡中公鸡、母鸡、小鸡各多少)。
这是一个古典数学问题,设一百只鸡中公鸡、母鸡、小鸡分别为x,y,z,问题化为三元一次方程组: 这里x,y,z为正整数,且z是3的倍数;由于鸡和钱的总数都是100,可以确定x,y,z的取值范围:1) x的取值范围为1~202) y的取值范围为1~333) z的取值范围为3~99,步长为3 对于这个问题可以用穷举的方法,遍历x,y,z的所有可能组合,最后得到问题的解。 初始算法1.初始化为1;2.计算x循环,找到公鸡的只数;3.计算y循环,找到母鸡的只数;4.计算z循环,找到小鸡的只数;5.结束,程序输出结果后退出。
算法细化算法的步骤1实际上是分散在程序之中的,由于用的是for循环,很方便的初始条件放到了表达式之中了。步骤2和3是按照步长1去寻找公鸡和母鸡的个数。
步骤4的细化 4.1 z=1 4.2 是否满足百钱,百鸡 4.2.1 满足,输出最终百钱买到的百鸡的结果 4.2.2 不满足,不做处理 4.3 变量增加,这里注意步长为32、程序代码如下#include "stdio。 h"main(){int x,y,z;for(x=1;x for(y=1;y for(z=3;z {if((5*x 3*y z/3==100)&&(x y z==100))/*是否满足百钱和百鸡的条件*/ printf("cock=%d,hen=%d,chicken=%d ",x,y,z); }}程序运行结果如下:cock=4,hen=8,chicken=78cock=8,hen=11,chicken=81cock=12,hen=4,chicken=84。
