方法: for ループ ステートメントまたは filter() メソッドを使用して配列をループし、各ループで配列要素を 2 ずつ削除して「sqrt (要素自体)」にします。 、これは、配列要素が素数ではなく、それ以外の場合は素数であることを意味します。配列要素が素数の場合は、要素を出力するだけです。
このチュートリアルの動作環境: Windows7 システム、JavaScript バージョン 1.8.5、Dell G3 コンピューター。
素数とは何ですか?
素数とも呼ばれる素数は、1 とそれ自体以外に因数を持たない、1 より大きい自然数を指します。
JavaScript で配列内の素数を見つける方法
for ループ ステートメントまたは filter() メソッドを使用して配列をループしますループごとに配列の要素が素数かどうかを判定し、素数であればその要素を出力します。
素数かどうかの判断方法: 2 を 2 乗 (この数) で割る数値を使用します。均等に割り切れれば、その数値は素数ではないことを意味します。は素数です。
実装方法を見てみましょう:
使用 for ループ
var a = [31,33,35,37,39,41,43,45,57,49,51,53]; for(var i=0;i<a.length;i++){ var flag = 1; for(var j = 2; j*j <= i; j++) {//能被2 - sqrt(i)整除的数 if(a[i] % a[j] == 0) { flag = 0; break; } } if(flag == 1) { console.log(a[i]) } }
使用filter() メソッド
function f(value, index, ar) { high = Math.floor(Math.sqrt(value)) + 1; for (var div = 2; div <= high; div++) { if (value % div == 0) { return false; } return true; } } var a = [31, 33, 35, 37, 39, 41, 43, 45, 57, 49, 51, 53]; var a1 = a.filter(f); console.log(a1);
[推奨学習: JavaScript 上級チュートリアル]
以上がJavaScript で配列内の素数を見つける方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。