鸡兔同笼问题
概述:本次分享的是解决鸡兔同笼问题,对于这种基础的问题,但我打算分别用Java,c语言,python来解决
问题:输入鸡和兔的总数和总腿数,来计算兔子和鸡的各个数量。
一、Java
import java.util.Scanner;
/**
*已知鸡和兔的总数量为n,总腿数为m。
*输入n和m,依次输出鸡和兔的数目,
*如果无解,则输出“No answer”
*/
public class blogs1 {
public static void main(String[] args) {
System.out.println(“输入鸡和兔的总数”);
Scanner scanner1 = new Scanner(System.in);
double n = scanner1.nextDouble();
System.out.println(“输入总腿数”);
Scanner scanner2 = new Scanner(System.in);
double m = scanner2.nextDouble();
输入鸡和兔的总数量和总腿数
double a = (m - (2 * n))/ 2;
if(a % 1 == 0){
System.out.println(“兔子数量为:” + (int)a + “;” +”鸡的数量为:” + (int)(n-a));
}else {
System.out.println(“No answer”);
}
}
}
二、python
nHead = int(input(“请输入鸡和兔的总只数:”))
nFoot = int(input(“请输入鸡和兔的总脚数:”))
nChicken = 0
nRabbit = 0
result = True
for i in range(nHead):
nChicken = i
nRabbit = nHead - i
if (2 * nChicken + 4*nRabbit == nFoot):
break
else:
result = False
if result:
print(“鸡有{}只,兔有{}只”.format(nChicken, nRabbit))
else:
print(“无解”)
三、C语言
#include <stdio.h>
int main()
{
int heads,feet,x,y;
//定义x为鸡的数量,y为兔子的数量
scanf(“%d%d”,&heads,&feet);
x=(4*heads-feet)/2;
//计算出鸡的数量
y=heads-x;
//计算出兔子的数量
printf(“%d %d”,x,y);
return 0;
}
针对鸡兔同笼问题,我们可以用举例的方法解决,也可以用方程来解决鸡兔同笼
#内容简单,但基础,有用,易理解