有一點看不下去了....~"~
只是個簡單的迴圈跟巢狀判斷.....
沒有必要掰的"陣列"吧....= =a (要是說陣列上的讀取...用迴圈做 那還沒話講)
質數....
拍謝數學很爛...不知道...
依你的程式碼來看
應該可以這麼寫...
System.out.print("1 至 30 間的質數有: "); <===我是學C的...不懂你們JAVA的程式庫 我想應該是螢幕輸出指令吧....^^"
for(int i=2; i<=30; i++)
{
for(int j=2; j<i; j++)
{
if(i%j==0 )
break;
else if(j==i-1)
System.out.print(i + " ");
}
}
你在Debug的時候.....多注意i跟j
提示!!
%是取餘數用的 也是除法
break是跳出目前的迴圈...依你的程式碼他只會跳出第二個for...跳出後還會再第一個for跑...直到條件成立
PS:
作業區有類似的題目
http://bbs.mychat.to/read.php?tid=468441&keyword=%BD%E8%BC%C6它是用陣列....目的看起來像是"紀錄"用的.....= =a (只是單純上的質數輸出...感覺上有一多餘)
還有...我拿你的程式碼稍微修改一下...
拿到VC++6.0上跑
輸出是這樣...
1 至 30 間的質數有: 3 5 7 11 13 17 19 23 29
不知道對不對....^^"