2016-09-08 4 views
-3

次のコードで速度の値がどのように変化するかを理解してください。 誰かが私にスピードの価値が42、最終的に36である理由を理解する助けになることができますか?ありがとうございます。Whileループプログラミング中

speed <- 64 

while (speed > 30) { 
    print(paste("Your speed is",speed)) 
    if (speed > 48) { 
    print("Slow down big time!") 
    speed <- speed -11 
    print(speed) 
    } else { 
    print("Slow down!") 
    speed <- speed -6 

    } 
} 
+0

私はそれがAGであると思いますあなたがdownvote場合は、理由を提供する大胆な練習。私はこの事例を例にとって、なぜこの質問を下落させるべきかはわかりません。 – jakub

+0

自分で見つけてみると、( 'speed'をパラメータとして)関数にコードを入れて、' debug'を使って段階的に速度値を追跡することができます – Cath

答えて

2

ループ1:speedの値が11で速度を減少させるので、ifステートメントが実行され、64 - > 53

ループ2:speedの値が53であるので、ifステートメントが実行され、還元11による速度 - ループ3> 42

speedの値は6で速度をダウンさせ、そうelseが実行され、48未満であり、今42である - > 36