定义结果存储的变量为:float result=1%也就是A0的面积
循环体:
for(int i=0i<Xi++)
{
result=result/2
}
最后返回result就是了。
这部分C#和C好像没啥区别。
思路就是:
如果X=0,那么循环不会执行,也就是结果还是A0;
如果X=1,那么循环执行一次,也就是变成了result=A0/2=A1;
如果X=2,那么循环执行两次,第一次循环变成了result=A0/2=A1;第二次循环时result已经是A1的大小了,那么这次循环输出就变成了result=A1/2=A2
以此类推
int an(int n){if(n==1){
return 0
}else if(n==2){
return 1
}else{
return an(n-1)+an(n-2) //递归执行
}
}
我用递归算法写的