[問題] 質數尋找

看板R_Language作者 (SleepyChink)時間8年前 (2015/10/31 20:45), 編輯推噓3(305)
留言8則, 3人參與, 最新討論串1/1
請問, 我的語法完成後 解果只有將2-200印出200次給我,並沒有順利顯示出質數,為何會這樣呢? x <- seq(2,200,1) i<-1 done<-FALSE while(!done){ if(x[i]%%(2:(x[i]-1))!=0){ print(x) } if(x[i]==200){ done<-TRUE } i<-i+1 } -- Sent from my Windows -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.113.80.32 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1446295518.A.415.html

10/31 21:20, , 1F
print(x)的地方改成print(x[i])
10/31 21:20, 1F

10/31 21:21, , 2F
你x沒有下index就會整串x都跑出來
10/31 21:21, 2F

10/31 21:38, , 3F
改成x[i] 之後 得到的數列並非全部是質數。
10/31 21:38, 3F

10/31 21:55, , 4F
if(all(x[i]%%(2:(x[i]-1))!=0))
10/31 21:55, 4F

11/01 02:46, , 5F
這樣的結果列出來少一個2
11/01 02:46, 5F

11/01 06:42, , 6F
if(sum(x[i]%%(1:x[i])==0)==2)
11/01 06:42, 6F

11/01 06:43, , 7F
質數定義: 一個自然數若恰有兩個正因數 稱為質數
11/01 06:43, 7F

11/01 06:44, , 8F
你可以思考一下自己的條件式跟這段定義的差異在哪
11/01 06:44, 8F
文章代碼(AID): #1MDBVUGL (R_Language)