① java程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21....
public class Test {//用递归法计算兔子的规律
static long fib(int x){
if(x>2) return (fib(x-1)+fib(x-2));
else return 1;
}
public static void main(String[] args) {
for(int i=1;i<=24;i++){
long n=fib(i);
//算出的是对数.要算总数的法,*2就行
System.out.println("第"+i+"个月有兔子对数为"+n);
}
}
}
② java题,一开始一对兔子,每三个月生一对兔子,兔子不死,24个月后有多少兔子
//importjava.util.Scanner;
/**
*有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少对
*@authoryoung
*
*/
publicclassTuZiTest{
publicstaticvoidmain(String[]args){
// Scannersc=newScanner(System.in);
int[]tz=newint[24];
tz[0]=tz[1]=1;
intmonth=0;
while(month<24){
if(month==0||month==1){
}else{
tz[month]=tz[month-1]+tz[month-2];
if((month+1)%3==0){
System.out.println("第["+(month+1)+"]个月的兔子对数:"+tz[month]);
}
}
month++;
}
}
}
③ 谁能帮我解析一下这道java算法题目! (计算兔子的数量)
f(int x)是计算方法,int x 是形参,因为这个题的原理满足斐波那契数列,这个数列的计算方法就是第n个数=第n-1个数+第n-2个数,所以f方法中,采用的就是这个计算方式
在F方法中,因为有int x这个形参,所以方法里需要这个形参来传值
而实际参数是i,每循环一次,i值就会传给形参x进入计算
④ 使用java编程序:有一对兔子,从出生的第三个月起生一对兔子,兔子长大第三个月后又生一对。兔子不死
根据你的答案,感觉题目表述有点问题,应该是这样的:有一只兔子,第三个月开始每个月生两只兔子,刚出生的小兔子,长到第三个月开始也是每个月生两只兔子。兔子不死,求出每个月兔子的总只数。
如果这样就对了,f1代表初始兔子数,也就是1只,f1=1。。f2代表每月兔子的总数。。f的作用纯粹只是传递值用的。。M代表的是输出总月数,也就是月份的限制,24代表24个月,也就是打印到第24个月的兔子总数。如果改成13,那就打印到第13个月的。
这个程序输出结果是这样的:
第一个月兔子的对数: 1
第3个月的兔子对数:3
第4个月的兔子对数:5
第5个月的兔子对数:8
第6个月的兔子对数:13
。。。
第24个月的兔子对数:75025
⑤ 请教:用JAVA编程计算兔子数量问题
递归
intf1=1;//一个月大的兔子
intf2=1;//二个月大的兔子
intfn=1;//兔子总数
for(inti=3;i<25;i++){
fn=f1+f2;
f2=f1;
f1=fn;
System.out.println(i+","+fn);
}
⑥ java 鸡和兔子一共35只 脚94只 有多少只鸡和兔子 用java 计算结果
这种问题你关键是要理清里面的逻辑,然后寻求一个程序的解法。
这题目关键是:总数是35, 兔子4只脚,鸡2只,一共有94只脚。相当于
2个变量x + y = 35 4*x + 2*y = 94
JAVA处理就是在0~35内寻求符合条件的正整数。完整编码:
public class Du2 {
public static void main(String args[]) {
int head = 35;//头数
int feet = 94;//脚
for(int chicken = 0; chicken <= feet / 2; chicken ++){
int rabbit = head - chicken;
if(rabbit * 4 + chicken * 2 == feet){
System.out.println("笼子里面有" + chicken + "只鸡," + rabbit + "只兔子");
}
}
}
}
注:这是经典的题目,以前很多人写了文章介绍的,楼主可以去搜一下
⑦ 编写java程序假设某农户家共养有鸡·兔30只,他们共有90只脚,计算鸡,兔各有多少只
int a,b,sum=30;
for(a=0;a<sum;a++){
b=30-a;
if ((a*2+b*4)==90) {
System.out.println("鸡有"+a+"只,兔子有"+b+"只");
}
}
纯手写,望采纳
⑧ 鸡 和 兔子 一共是 =48 个; 他们的腿脚一共是 =108 个; 请问 鸡= 兔子=求Java里怎么算数学里呢
数学:
假设,全是兔,则:
4x48=192条腿。
比实际多出了:
192-108=84条腿。
并且,兔比鸡多2条腿:
4-2=2
所以,用多出的腿去除2,就是鸡的数目了。
鸡=84/2=42只.
并且,从题目可知道,一共鸡兔48只。现在已经知道鸡是42只,用48-42,则:
兔=48-42=6只
代码:
publicclassTest
{
publicstaticvoidmain(String[]args)
{
for(intchicken=0;chicken<48;chicken++)
{
intrabbit=48-chicken;
if(chicken*2+rabbit*4==108)
{
System.out.println("鸡的数量:"+chicken+"兔的数量:"+rabbit);
}
}
}
}
⑨ JAVA的经典算法题目:计算兔子 该怎样理解它的思路!
你的理解错了,假设第一个数是i,第二个数是j,那么第三个数是i+j,不是(x-1)+ (x-2)
⑩ java,用循环求出两年后兔子的数量
public static void main(String[] args) {
int last1 = 0;
int last2 = 0;
int num = 2;
int sum = 0;
for(int i = 1; i <= 24;i++){
if(i>2){
last2 = last1;
}
last1 = num;
sum = last1+ last2;
num = sum;
System.out.println("月份:"+i+"兔子数量"+sum);
}
}
运行结果:
月份:1兔子数量2
月份:2兔子数量2
月份:3兔子数量4
月份:4兔子数量6
月份:5兔子数量10
月份:6兔子数量16
月份:7兔子数量26
月份:8兔子数量42
月份:9兔子数量68
月份:10兔子数量110
月份:11兔子数量178
月份:12兔子数量288
月份:13兔子数量466
月份:14兔子数量754
月份:15兔子数量1220
月份:16兔子数量1974
月份:17兔子数量3194
月份:18兔子数量5168
月份:19兔子数量8362
月份:20兔子数量13530
月份:21兔子数量21892
月份:22兔子数量35422
月份:23兔子数量57314
月份:24兔子数量92736