鸡兔同笼程序代码(鸡兔同笼程序代码python)

http://www.itjxue.com  2023-03-18 10:32  来源:未知  点击次数: 

鸡兔同笼的问题 c语言怎么样编写

输入说明:

输入为两个正整数,第一个为

M

的值,第二个为

N

的值,用空格分隔。

输出说明:

若有解,输出两个整数,用空格分隔,第一个代表鸡的只数,第一个代表兔子的只数;若无解,直接输出一个

0。

算法:以列举法写程序,让计算机从鸡为0开始执行计算,利用循环语句计算大量次数后,得出最终结果。

具体程序为:

#include

int

main()

{int

chicken,rabbit;//鸡,兔子

int

M,N;//头,脚

printf("M=,N=");

scanf("%d

%d",M,N);

for(chicken=0;chicken=M;chicken++)//鸡的数量从0到总头数M尝试

{if(chicken*2+rabbit*4==N)//如果总脚数与输入的总脚数相同

{printf("%d

%d",chicken,rabbit);//分别输出鸡、兔

return

0;//停止程序}}//for执行完表示找不到

printf("0");return

0;}

扩展资料:

鸡兔同笼问题算法有很多种,编写出的程序不尽相同。下面列举几种算法,编写程序会更为简单一些。

有若干只鸡兔同在一个笼子里,从上面数,有35个头,从下面数,有94只脚。问笼中各有多少只鸡和兔?

(1)假设全是鸡:2×35=70(只),鸡脚比总脚数少:94-70=24

(只)

兔子比鸡多的脚数:4-2=2(只),兔子的只数:24÷2=12

(只),鸡的只数:35-12=23(只)

假设全是兔子:4×35=140(只),兔子脚比总数多:140-94=46(只)

兔子比鸡多的脚数:4-2=2(只),鸡的只数:46÷2=23(只),兔子的只数:=35-23=12(只)(2)设鸡有x只,兔有y只。

解得

参考资料:鸡兔同笼(一种数学奥数题目)_百度百科

VB程序编程鸡兔同笼

这个题目中没有注明鸡兔共多少只,所以会有多个答案。如果有鸡兔共多少只,就在判断语句中加上。 if i*2+j*4=50 and i+j=xxx then

另外过程不完整,没有如Private Sub Form_Click()这个过程开始。加上就可以了。

就是鸡兔同笼 总头数为h,总脚数为f,求鸡兔各有多少只? x+y=h,2x+4Y=f,设h=16,f=40,写出c语言程序代码

就是鸡兔同笼

总头数为h,总脚数为f,求鸡兔各有多少只?

x+y=h,2x+4Y=f,设h=16,f=40,写出c语言程序代码

分析:头设为h,脚设为f,

鸡是两只脚,免为四只脚。

再设x为鸡的脚数,y为免的脚数。

则满足关系是

x*2+y*4=f

,

x+y=h;

算法采用穷举法,是将所有可能的结果全部穷举出来。

#include"stdio.h"

void

main()

{

int

h,f,x,y;

scanf("%d,%d",h,f);

//输入头数和脚数

for

(x=1;k=f;x++)

for

(y=1;y=f;y++)

{

if

(x*2+y*4==h

x+y==h)

printf("%d

%d\n",x,y);

//满足关系则输出结果

}

}

^

_

^

关于VB程序设计【鸡兔同笼】

Private Sub Command1_Click()

Dim j As Integer '代表鸡的个数

Dim t As Integer ’代表兔的个数

Dim t1 As Integer '腿的个数

For j = 1 To 40

t = 40 - j

t1 = j * 2 + t * 4

If t1 = 100 Then

Print "鸡="; j; "只"; "兔="; t; "只"

End If

Next

End Sub

python编程,鸡兔同笼

def?candr(head,?foot):

????rabit?=?1

????while?1:

????????foots?=?2?*?(head?+?rabit)

????????if?foots?==?foot:

????????????if?head?-?rabit??0:

????????????????print('兔={0}?鸡={1}?'.format(rabit,?head?-?rabit))

????????????else:

????????????????print("Data?Error")

????????????break

????????elif?foots??foot:

????????????print("Data?Error")

????????????break

????????else:

????????????rabit?+=?1

求编写一个鸡兔同笼的程序,如图,c语言

算这个有个最简单的算法。

(总脚数-总头数×鸡的脚数)÷(兔的脚数-鸡的脚数)=兔的只数

(94-35×2)÷2=12(兔子数) 总头数(35)-兔子数(12)=鸡数(23)

解释:让兔子和鸡同时抬起两只脚,这样笼子里的脚就减少了总头数×2只,由于鸡只有2只脚,所以笼子里只剩下兔子的两只脚,再÷2就是兔子数。

输入: 通过键盘输入总头数和总脚数

输出: 求出兔子有多少只,鸡有多少只,并输出。

#include stdio.h

int main(void){

int head, foot, num1, num2;

printf("请输入鸡和兔的总头数和总脚数,用空格隔开:\n");

scanf("%d %d", head, foot);

if (foot % 2 == 1 || foot head * 2){

printf("输入有误!\n");

return 0;

}

num1 = (foot - head * 2)/(4 - 2);

num2 = head - num1;

if ((num1 = 0) (num2 = 0))

printf("兔子个数:%d,鸡的个数:%d\n", num1, num2);

else

printf("输入有误!\n");

return 0;

}

(责任编辑:IT教学网)

更多

推荐管理维护文章