2016-02-22 44 views
-1

所以我做了一個斐波那契循環,但我需要使它停止時,它擊中一定數量,它必須得到更高。這部分是沒有問題的地雷問題是,我犯了一個HTML,你可以輸入數字,但是當你把一個負數它沒有做任何事情,有人可以幫我 這裏是我的代碼停止斐波納契輸入負面

$a=0; 
$b=1; 
$c=$_POST["fibi"]; 




    for ($i = 0; $i <= $c; $i++) { 

     $z = $a + $b; 
     echo $z."<br />"; 

     if ($c == 0){ 

      echo 'the highest number is 0'; 
      break; 

      }elseif($c < 0){ 

       echo "please enter a positive number"; 
       break; 
     } 
      elseif($z >= $c){ 

       echo "the highest number is $latest"; 
       break; 
      } 


     $latest = $z; 
     $a = $b; 
     $b = $z; 

      } 

    <!DOCTYPE html> 

     <html lang="en"> 
     <head> 
      <meta charset="UTF-8"> 
      <title>fibi</title> 
     </head> 
     <body> 
     <form action="fibi.php" method="post"> 
      input:<input type= "number" name="fibi"> </form><br> 
     </body> 
     </html> 
+1

你真的應該自己做家庭作業。 – Daan

+1

始終清理用戶輸入。在這種情況下,確保它是一個正整數。在你開始使用這個變量之前。 – Paul

+0

我甚至沒有看到代碼塊上的php標籤。

回答

0

只需添加像你的代碼一樣的條件,如if($c > 0)