2017-02-24 4 views
0

私は素数の配列を作成するためにphp関数に取り組んでいます。これまでのところ、2から1000までのすべての素数がリストされている場所に作業しています。私が今したいのは、増分カウント< 100などを使用して最初の100個の素数を生成することです。ここに私の現在のコードです。ループを使用して最初の100個の素数で配列を塗りつぶす

<?php 

function prima($n) 
{ 
$primeNumbers = []; // Initiate result array 
for ($i = 1; $i <= $n; $i++) 
    { 
    $counter = 0; 
    for ($j = 1; $j <= $i; $j++) 
     { 
     if ($i % $j == 0) 
      { 
      $counter++; 
      } 
     } 

    if ($counter == 2) 
     { 
     $primeNumbers[] = $i; // store value to array 
     } 
    } 

return json_encode($primeNumbers); // return converted json object 
} 

header('Content-Type: application/json'); // tell browser what to expect 
echo prima(1000); // echo the json string returned from function 

?> 
+1

限界に達するとループが壊れます。 'if($ counter == 100)break;' – Barmar

答えて

1

forループの最後に 'if(count($ primeNumbers)== 100)break;'を追加します。

+0

これは私がやろうとしていたものです。ありがとうございました – user2168066

関連する問題