在一個神話故事中,有一只小兔住在一個周長為一千米的圓形神湖旁,A.B兩點把這個神湖分成兩部分,已知小兔從B點出發,沿逆時針方向繞神湖做跳躍運動,它每跳8分之3千米休息一次,如果跳到A點正好休息,那么就會經過特別通道AB滑倒B點,從B點繼續跳。它每經過一次特別通道,神湖半徑就擴大一倍,現知小兔共休息1000次,這是神湖周長是多少千米?(AB為圓的直徑)
現在要求編寫程序求結果:
NSInteger C = 1000;? //? 周長 初始值為 1000,單位:m
NSInteger b = 0;? ? ? ? //? 用于記錄上次到達A點跳的次數
for (int a = 1; a <= 1000; a++) {
if ((a-b)*375%(C/2) == 0) {
//? ? ? ? ? ? if (a*375%C==C/2) {
C = 2*C;? // 周長翻倍
b = a;
}
}
NSLog(@"神湖的周長是 %ld 米",C);
我是這么寫的,不知道有簡便方法不?請各位看官不吝賜教