Board logo

標題: 3-3-2 while迴圈敘述 [打印本頁]

作者: 小誌    時間: 2011-4-18 18:25     標題: 3-3-2 while迴圈敘述

3-3-2   while迴圈敘述
當我們知道迴圈必須執行的次數時,for敘述就是最好的迴圈敘述,但是若不知道迴圈必須執行的次數呢,那我們就可以使用while迴圈敘述,其格式如下:
while迴圈敘述區塊格式
  1. while  (條件式)
  2. {
  3.        要重複執行的敘述區塊;
  4. }
複製代碼
while迴圈敘述是由保留字while開始,在其後是一個條件式,而這個條件式則是一個布林值運算式,如果這個條件式成立(布林值運算結果為True),那麼在while迴圈敘述裡(敘述區塊)的程式碼就會執行至結尾,然後再判斷條件式,當這個條件式不再成立時,while迴圈敘述就會停止執行。

現在我們來比較一下for與while敘述:計算1加至10:
for寫法:
  1. for ($X=0 ; $X<10 ; $X++)
  2.        {
  3.           $Y=$Y+$X;
  4.         }
複製代碼
while寫法:
  1. $X=1;
  2. While ($X <= 10)
  3. {
  4.       $Y=$Y+$X;
  5.        $X=$X+1;
  6. }
複製代碼
看完這兩個敘述的比較,您是不是發現:同樣的功能,但是while敘述似乎麻煩多了,不過,若不知道迴圈會執行幾次,還是while敘述比較適合,如下例:
作者: 小誌    時間: 2011-4-18 18:26

實做學習8
請設計一PHP程式,計算6561是3的幾次方,並將答案顯示於網頁中。
[attach]5477[/attach]
圖3-17   範例test03_09.php
test03_09.php
  1. <?
  2. $test=6561;
  3. $ans=0;
  4. while ($test>1)
  5. {
  6.     $test=$test/3;
  7.     $ans=$ans+1;       
  8. }
  9. echo ("6561是3的" . $ans . "次方");
  10. ?>
複製代碼

作者: 小誌    時間: 2011-4-18 18:26

在while敘述區段中,除了可以使用「{ }」把敘述(敘述區塊)包括在其中外,亦可放棄使用「{ }」來包括敘述,改用「endswile;」作為結尾,格式如下:
while迴圈敘述區塊格式
  1. while  (條件式):
  2.        要重複執行的敘述區塊;
  3. endwhile;
複製代碼
例如
test03_09a.php
  1. <?
  2. $test=6561;
  3. $ans=0;
  4. while ($test>1):
  5.     $test=$test/3;
  6.     $ans=$ans+1;       
  7. endwhile;
  8. echo ("6561是3的" . $ans . "次方");
  9. ?>
複製代碼





歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)