任务很经典:考虑到每个成熟的母猪会给三对幼兔,计算30个月后的兔对数量。 代码如下:
int young = 1;
int mature = 0;
for(int n=2; n<=31; n++)
{
int take_away=young;
young=3*mature;
mature=mature+take_away;
System.out.println("month:"+n+"\t"+"mature\t"+mature+"\t"+"young\t"+young+"\n");
if(n==31)System.out.println(mature+take_away);
}
最初一切都很好:
月:2个成熟的1个年轻的0
月:3个成熟的1个年轻的3
月:4个成熟的4个年轻的3
月:5个成熟的7个年轻的12个
从28个月开始的输出如下:
月:28个成熟的1674257764年轻-2113786333
答案 0 :(得分:1)
您使用int
,新号码大于Integer.MAX_VALUE
。请改用long
。