2016-02-13 49 views
-2

部分有一些作品:爲什麼初始化立即在循環中設置的變量?一個<code>while</code>循環

k = 1.6; %%give an initial k 
k1 = 1.5; 
l = 0.01 
while abs((k-k1)/k)>0.00001 
    k1=k; 
     k=k-l; 
    ... 
end 
  1. 何必設置k1 = 1.5時,立即設置爲k。稍後在循環中,它僅更改kl,而不是​​。

此外,以後在這個循環之後的計劃,他們把

k = 0.1:0.01:3; 
  • 這是否更換k=1.6 ......還是沒環路使k成矢量?

  • 最後,如果這種直覺,k載體是正確的,什麼是

    k = k - 1

  • 在一個循環是什麼意思?

    $ K_ {T + 1} = K_T - 升$

    +1

    如果在循環之外沒有初始化'k1',那麼當abs(( k-k1)/ k)> 0.00001'會在循環進入時首先執行?如果沒有看到完整的代碼,很難說出其他問題。不要認爲其他人的代碼是正確的,沒有錯誤的,或者寫得很好。 – horchler

    +0

    哦!好點謝謝@horchler,它不會運行,因爲k1還沒有定義 – Sunhwa

    +0

    @horchler,所以我希望我發佈完整的代碼?或者你回答了我的主要問題,所以想複製作爲答案,以便我可以接受它? ...我也想接受,所以我可以得到2分,所以我可以得到upvote許可(: – Sunhwa

    回答

    1
    1. 如前所述ķ需要有一定的價值之前while循環是有意義並且可以被髮起。

    2. 是的,代替k。每當有等號時,變量就會重新定義。

    3. K不是代碼中表示k = k-1的向量。該代碼片段意味着k現在等於k在之前減1的值,例如,如果在該行之前k是5,並且l是2,那麼k現在是3.

    相關問題