题目
一根高筋拉面,中间切一刀,可以得到2根面条。
如果先对折1次,中间切一刀,可以得到3根面条。
如果连续对折2次,中间切一刀,可以得到5根面条。
那么,连续对折10次,中间切一刀,会得到多少面条呢?
分析
规律如下表所示。
第i刀 | 数量 |
0 | 2 |
1 | 2+2*0 |
2 | 2+2*0+2*1 |
3 | 2+2*0+2*1+2*2 |
... | ... |
n | 2+2*0+2*1+...+2*(n-1) |
代码
(一)C:
#include <stdio.h>
int main()
{
int i,t,sum;
t=1,sum=2;
for(i=0;i<10;i++)
{
sum+=t;
t=t*2;
}
printf("%d\n",sum);
return 0;
(二)Java:
public class qiemiantiao {
public static void main(String[] args) {
int t=1,sum=2;
for(int i = 0;i<10;i++){
sum += t;
t *= 2;
}
System.out.println("切10刀的根数为"+ sum);
}
}
输出结果
切10刀的根数为1025