问题描述:
假设机器人的成熟期是3天,在成熟期每天可以自我复制。第一个机器人已经是成熟期,求第n天的机器人数量。
第一天 | 第二天 | 第三天 | 第四天 | 第五天 | 第六天 |
1 | 2 | 3 | 4 | 6 | 9 |
代码展示:
1 #include<stdio.h> 2 int main(){ 3 int p0=1,p1=0,p2=0,p3=0; //p0表示成熟期,p1表示还需1天就成熟,p2表示还需要两天可以成熟,p3表示还需要三天才可成熟 4 int x; //用于输入,表示求第x天的机器人数量 5 int i; 6 int temp; 7 int sum; 8 printf("请输入第几天:"); 9 scanf("%d",&x); 10 for(i=1;i<x;i++){ 11 p0 = p0 + p1; 12 p1 = p2; 13 p2 = p3; 14 p3 = p0; 15 } 16 sum = p0+p1+p2+p3; 17 printf("第%d天一共有%d个机器人\n",x,sum); 18 return 0; 19 }
运行截图: