我是一名初級編碼員,目前正在學習基礎 PHP 課程。我正在練習嵌套回圈,其中一個重要問題包括以下內容:
我試圖執行的程式
我嘗試使用以下代碼(這是我用來檢查通過 html 表單輸入的數字是否為素數的代碼,但我對其進行了更改以適合此問題)但它似乎不正確,因為它只列印 2 和 3,
這是 php我寫的代碼:
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<?php
echo "<h3>The prime numbers up to 20 are:</h3>";
echo "<p>1</p>";
//Declaration of Variables
$status=true;
//Nested Loop and Conditions
for( $i = 2; $i <= 20; $i ){
for( $k = 2; $k < $i; $k ){
if( $i % $k == 0 ){
$status=false;
}
}
//Printing
if($status==true)
echo "<p>$i</p>";
}
?>
</body></html>
誰能告訴我我做錯了什么?我知道這個問題看起來很簡單,但請原諒我,我還在學習。這也是我在平臺上的第一個問題之一,所以如果格式有點不對,請原諒我。先感謝您 :)
uj5u.com熱心網友回復:
歡迎來到社區
我添加了 1 個計數器
如果 i 和 k 等于 0,我將計數器加 1 并退出回圈
如果計數器不為零,則計數器不是素數
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<?php
echo "<h3>The prime numbers up to 20 are:</h3>";
echo "<p>1</p>";
//Declaration of Variables
$counter = 0;
//Nested Loop and Conditions
for( $i = 2; $i <= 20; $i ){
$counter = 0;
for( $k = 2; $k < $i; $k ){
if( $i % $k == 0 ){
$counter =1;
break;
}
}
if($counter == 0){
echo "<p>".$i."</p>";
}
}
?>
uj5u.com熱心網友回復:
試試這個,(如果你想在你的結果串列中 1 你應該開始 $i=1 )
for ($i=2; $i <= 20 ; $i ) {
for ($k=2; $k <= 20 ; $k ) {
$divided = false;
if (($i%$k == 0 && $i != $k)) {
$divided = true;
break;
}
}
if (!$divided) {
echo $i .'<br>';
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/343067.html
下一篇:如何列印完整金字塔的金字塔?
