ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript で配列内の素数を見つける方法

JavaScript で配列内の素数を見つける方法

青灯夜游
青灯夜游オリジナル
2021-09-02 16:02:534114ブラウズ

方法: for ループ ステートメントまたは filter() メソッドを使用して配列をループし、各ループで配列要素を 2 ずつ削除して「sqrt (要素自体)」にします。 、これは、配列要素が素数ではなく、それ以外の場合は素数であることを意味します。配列要素が素数の場合は、要素を出力するだけです。

JavaScript で配列内の素数を見つける方法

このチュートリアルの動作環境: 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])
	}
}

JavaScript で配列内の素数を見つける方法

使用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 上級チュートリアル]

以上がJavaScript で配列内の素数を見つける方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。