新聞中心
編寫java程序找出2-100之間的所有素數(shù) 求大神
素數(shù)又稱質數(shù),有無限個。素數(shù)定義為在大于1的整數(shù)中,除了1和它本身以外不再有其他因數(shù)的數(shù)稱為素數(shù)。
為雞西梨樹等地區(qū)用戶提供了全套網(wǎng)頁設計制作服務,及雞西梨樹網(wǎng)站建設行業(yè)解決方案。主營業(yè)務為網(wǎng)站設計制作、成都網(wǎng)站設計、雞西梨樹網(wǎng)站設計,以傳統(tǒng)方式定制建設網(wǎng)站,并提供域名空間備案等一條龍服務,秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!
java程序找出2-100之間的所有素數(shù),代碼如下:
public void findPrimeNumber(){
//存放素數(shù)集合
ListInteger lists=new ArrayListInteger();
//遍歷2-100
for(int x=2;x100;x++){
//標志是否為素數(shù),默認是true
boolean flag=true;
//循環(huán)x除以(x/2)的數(shù),能整除則不是是素數(shù)(不包含2)
for(int y=2;yx/2;y++){
if(x%y==0){
//能整除,則把標志設置為false,不是素數(shù)
flag=false;
break;
}
}
if(flag){
//flag還是true,則是素數(shù)
lists.add(x);
}
}
System.out.println("2-100的素數(shù)集合:"+lists);
}
結果:
2-100的素數(shù)集合:[2, 3, 4, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]
java代碼實現(xiàn)101-200的素數(shù)
如果for循環(huán)完成后,j的值大于或等于i,說明i就是素數(shù),所以有這個判斷。判斷成功后,素數(shù)總數(shù)加1,輸出這個素數(shù)。判定為素數(shù)的原因就是比i小的數(shù)都不能除盡他。
用JAVA編寫判斷素數(shù)的程序
import java.util.*;
class Test {
public static void main(String[] args) {
System.out.println("請輸入要進行判斷的整數(shù):");
Scanner sc = new Scanner(System.in);
int number = sc.nextInt();
System.out.println("您輸入的整數(shù)是:" + number);
if(isPrimeNumber(number)) {
System.out.println("您輸入的數(shù)" + number + "是素數(shù)。");
} else {
System.out.println("您輸入的數(shù)" + number + "不是是素數(shù)。");
}
}
//判斷素數(shù)的靜態(tài)方法
public static boolean isPrimeNumber(int num) {
boolean flag = true;
if(num == 2) {
return flag;
}
for(int i = 1; i Math.sqrt(num); i++) {
if(num % 2 == 0) {
flag = false;
break;
}
}
return flag;
}
}
寫了一個,不知道滿足你的要求不?
java求素數(shù)代碼
輸出前500個素數(shù)
其中
for
(int
i
=
2;
i
=
math.sqrt(k);
i++)
從2開始,1不用比較,如果還有另外一個不是他本身的數(shù)可以整除他,那他就不是素數(shù)
math.sqrt(k)
是原先一個人提出的算法,加大效率的,你可以測試看看
已經按照你的要求用到了while和if
else
下面的朋友···別人說要用什么寫就用什么寫···有時候按要求去就好了
class
a
{
public
static
void
main(string
arg[])
{
int
num
=
0;
int
k=2;
while
(num
500)
{
if
(isprime(k))
{
system.out.print(k
+
"
");
num++;
}
k++;
}
}
public
static
boolean
isprime(int
k)
{
if
(k
==
2)
return
true;
else
if
(k
%
2
==
0)
return
false;
else
{
for
(int
i
=
2;
i
=
math.sqrt(k);
i++)
if
(k
%
i
==
0)
return
false;
return
true;
}
}
}
分享文章:素數(shù)的java代碼 java中素數(shù)的算法
本文鏈接:http://www.ef60e0e.cn/article/doeioje.html