(java实现)
问题
题目描述:
有一只兔子,从出生后第3个月起每个月都生一只兔子,小兔子长到第三个月后每个月又生一只兔子,假如兔子都不死,问每个月的兔子总数为多少?
本题有多组数据。
输入描述:
输入int型表示month
输出描述:
输出兔子总数int型
示例1:
输入
9
输出
34
问题分析:
注意:是第三年开始生子,不是三年后开始生子;
相关知识:
略
算法实现:
略
参考代码:
import java.util.*;
public class Main {
public static void main(String[] args)
{
Scanner input = new Scanner(System.in);
while (input.hasNext())
{
String line = input.nextLine(); //因为有多组数据,需要将每次以行来读入,next没有读入换行符
int num = Integer.parseInt(line);//将读入的字符串转为整数
int sum=0;
int i3 = 1;
int i2 = 0;
int i1 = 0;
for (int i=1; i<num-1; i++)
{
i3 = i3 + i2; //第三年开始生子,不是三年后开始生子
i2 = i1; //记录年龄数
i1 = i3; //记录生子数
}
sum = i3 + i2 + i1; //统计数目
System.out.println(sum);
}
}
}