當前位置:首頁 » 編程語言 » java素數演算法

java素數演算法

發布時間: 2025-10-07 01:37:59

⑴ 用java寫個程序 判斷 用戶輸入的數 是否是質數

使用java編寫判斷自然數是否為素數的方式是,使用scanner來接受用戶輸入的數值,使用素數的演算法,實例如下:

Scannersr=newScanner(System.in);
System.out.print("請輸入a的值:");
inta=sr.nextInt();
booleanis=true;
if(a<1)
{
System.out.println(a+"不是質數,因為他小於一");
}
else
{
List<Integer>list=newArrayList<Integer>();
for(inti=2;i<a;i++)
{
if(a%i!=1&&a%i!=a)
{
if(a%i==0){
is=false;
list.add(i);
}
}
}
if(is){
System.out.println("a是質數");
}else{
Stringyz="";
for(inti=0;i<list.size();i++)
{
if(yz=="")
{
yz=yz+list.get(i);
}else{
yz=yz+","+list.get(i);
}
}
System.out.println("a不是質數,因為他含有因子"+yz);
}
}

⑵ 用java找出1到100的素數,並求和

intsum=0;
for(inti=2;i<=100;i++){//質數
for(intk=2;k<=i;k++){//除數
//排除所有在i=k之前能被k整除(余數為0)的數
if(i%k==0&&i!=k){
break;
}
//輸出所有在i=k且i%k=0的數
if(i%k==0&&i==k){
System.out.println(i);
sum+=i;
}
}
}
System.out.println("sum="+sum);

思路:先說什麼是素數。除了1和它本身以外不再有其他的因數就是素數。所以你要做的就是對於一個整數i,讓他和比他小的正整數取余數,如果為0的話就肯定不是素數了。如果都不為0且最後只有他本身那麼這個數就是素數了。看上面循環,直接從2開始就刨除了1,不然判斷條件裡面還得寫1的判斷

熱點內容
java返回this 發布:2025-10-20 08:28:16 瀏覽:710
製作腳本網站 發布:2025-10-20 08:17:34 瀏覽:972
python中的init方法 發布:2025-10-20 08:17:33 瀏覽:681
圖案密碼什麼意思 發布:2025-10-20 08:16:56 瀏覽:833
怎麼清理微信視頻緩存 發布:2025-10-20 08:12:37 瀏覽:741
c語言編譯器怎麼看執行過程 發布:2025-10-20 08:00:32 瀏覽:1081
郵箱如何填寫發信伺服器 發布:2025-10-20 07:45:27 瀏覽:312
shell腳本入門案例 發布:2025-10-20 07:44:45 瀏覽:192
怎麼上傳照片瀏覽上傳 發布:2025-10-20 07:44:03 瀏覽:879
python股票數據獲取 發布:2025-10-20 07:39:44 瀏覽:837