獲取某個數內的質數

2021-09-10 02:21:47 字數 1023 閱讀 6038

思路:

1,排除傳入引數為小於2的數(if(param < 2)return;);

2,建立有乙個元素2的陣列(let arr = [2]);

3,建立乙個初始值為3(i = 3),最大值為傳入引數的迴圈(i <= param),注意偶數不可能為指數,所以迴圈的時候直接去掉偶數,直接迴圈奇數(i += 2);

4,定義當前迴圈的標記(flag = true);

5,建立乙個初始值為3(j = 3),最大值為當前值(j < i),注意能被偶數整出的數就能被2整除,所以排除所有偶數,直接迴圈奇數(j += 2);

6,判斷當前值i是否能被3~i之間的某個奇數整除(i%j === 0),如果整除就flag = false 並且退出當前迴圈(break);

7,最後在外部迴圈最後位置進行判斷,如果flag有效,就將該值push進陣列(if(flag))

**:

function primenum(param)

} if(flag)arr.push(i);

} return arr;

}

測試:

console.log(primenum(100));//[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]

console.log(primenum(3));//[2,3]

注意:

1,兩次迴圈都只用迴圈奇數,減少迴圈次數

2,在迴圈開始就將2排除

3,當前迴圈的標記flag,在外部迴圈push

其他[我的部落格,歡迎交流!](

[我的csdn部落格,歡迎交流!](

[前端筆記專欄](

[前端筆記列表](

[遊戲列表](

posted @

2017-09-14 10:33

newman·li 閱讀(

...)

編輯收藏

C DataGridView如何獲取某個資料

datagridview的幾個基本操作 1.獲取某個 指定的 單元格的值 datagridview1.row i cells j value 2.獲取選中的總行數 datagridview1.selectedrows.count 3.獲取當前選中行的索引 datagridview1.currentr...

Jquery獲取選中行的某個資料

1.頁面結構 交易日期 交易型別 交易金額 狀態是否核銷 流水 操作 list list as item if item.income 0 支出 else 收入 if item.income 0 else if item.state 1 未對賬 elseif item.state 2 對賬中 els...

獲取某個陣列的全排列 遞迴

思路講解 乙個元素的序列全排列是其本身 對於乙個n個元素的序列 沒有重複元素 而言,我們可以把其分解為n個子問題 即依次讓每個元素作為首元素,剩下的n 1個元素進行全排列,例子 對元素全排列可以分解為對 以1開頭,拼接上對的全排列 以2開頭,拼接上對的全排列 以3開頭,拼接上對的全排列 依次類推,對...