亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么這里的“如果”條件有效?

為什么這里的“如果”條件有效?

函數式編程 2021-06-14 13:09:12
這里的代碼檢查從 2 到 n 的素數:<script>function showPrimes(n) {  for (let i = 2; i < n; i++) {    if (!isPrime(i)) continue;    alert(i);  // a prime  }}function isPrime(n) {  for (let i = 2; i < n; i++) {    if ( n % i == 0) return false;  }  return true;}</script>但是我不明白為什么它適用于數字 2 并在 n 和 i 都等于 2 時返回 false 而其他素數不會發生這種情況。我是 javascript(和一般編程)的新手,根據我的理解,這段代碼從第一個循環中的第一次迭代中獲取 i(在“showPrimes”函數上)并將其作為參數放在“isPrime”函數上,并在該函數成為“if”條件中的“n”,并檢查當它從“isPrime”循環中除以 i 時是否存在余數,因此 (n % i == 0) 應該是 (2 % 2 == 0) 在第一次迭代中,是嗎?如果是這樣,為什么它像其他質數一樣工作,這些質數顯然變成假的,不像 (2 % 2 == 0) 這是真的......我在這里缺少什么?對不起,如果這是一個明顯/愚蠢的問題,這是我第一次學習與編程相關的任何東西。
查看完整描述

1 回答

?
小唯快跑啊

TA貢獻1863條經驗 獲得超2個贊

function isPrime(n) {  
    for (let i = 2; i < n; i++) {

當 n=2 時;i=2; 不會進入上面的循環。


查看完整回答
反對 回復 2021-06-18
  • 1 回答
  • 0 關注
  • 160 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號