java 编写兔子生仔 小东西疑问
比如说:一只母兔子一个月只能生一只兔子,而一个月后生了一个小兔子 小兔子过两个月才会生兔子。
一个月以后有2只兔子
两个月以后有3只兔子
三个月以后有5只兔子
4个月后呢?
30个月后 有多少兔子
60个月后 有多少兔子?
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
用java 代码实现 --------------------编程问答-------------------- 我朋友说,用java 5行代码就能实现了。 哭中 怎么搞定? --------------------编程问答-------------------- public class Fibonacci {
int fib(int n) {
if (n < 1)
return 1;
return (fib(n - 2) + fib(n - 1));
}
public static void main(String[] args) {
Fibonacci f = new Fibonacci();
Scanner scanner = new Scanner(System.in);
int length = scanner.nextInt();
for (int i = 0; i < length; i++) {
if (i < 2) {
System.out.print(f.fib(i) + " :");
} else {
System.out.print(f.fib(i) + " :");
}
}
}
}
几个月就在控制台输入几 --------------------编程问答-------------------- 如果要直接打印就:
public class Fibonacci {
static int fib(int months) {
int rabbits = 1;
for (int i = 1; i <= months; i++) {
if (i >= 3) {
rabbits = rabbits + 1;
rabbits += fib(months - i + 1);
}
}
return rabbits;
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int length = scanner.nextInt();
System.out.println(fib(length));
}
} --------------------编程问答--------------------
import java.util.Scanner;
导入 这架包 --------------------编程问答-------------------- 直接找数学算法,可不就五行代码 --------------------编程问答--------------------
--------------------------
大虾 你那个运行有误呀? 好像是一个 死循环 --------------------编程问答-------------------- 3楼的算法很正确哦 --------------------编程问答-------------------- 获取第n月兔子的数量
--------------------编程问答-------------------- 程序逻辑题目
static int getSum(int n){
return (n == 0 || n == -1) ? 1 : getSum(n - 1) + getSum(n - 2);
}
路过,不发表感言 --------------------编程问答-------------------- 要是生的是公兔子呢? 哈哈
补充:Java , Java EE