導航:首頁 > 源碼編譯 > 求素數的java演算法

求素數的java演算法

發布時間:2023-10-20 08:39:48

㈠ 用java求3到100的素數,初學者,求簡單的

public static void main(String[] args) {

int count = 0;

int sum = 0;

for (int i = 2; i <= 100; i++) {

boolean flag = false;

for (int j = 2; j <= i >> 1; j++) {

if (i % j == 0) {

flag = true;

break;

}

}

if (!flag) {

System.out.print(i + " ");

sum += i;

count++;

}

}

System.out.println();

System.out.println("1--100之間的素數(也稱質數)的個數 -->"+count);

System.out.println("1--100之間的素數(也稱質數)的個數之和 -->"+sum);

}

㈡ 用java求100以內的全部素數

這個的主要點是嵌套的循環,要注意循環要遍及數據的循環、邏輯判斷,素數就是表示除1及其本身外不能被其他比他小的整數整除,掌握這點就可以理解了,下面代碼僅供參考:

//實現求1-100之間的所有素數
publicclassTest
{
publicstaticvoidmain(String[]args)
{
//使用外層循環來控制1-100的數據的遍歷
for(inti=1;i<=100;i++){
//素數就是除1及其本身外不能被其他整數整除
intj=2;
while(i>j){
//如果可以被小於他的數據整除,表示該數不是素數,跳出循環
if(i%j==0){
break;
}
j++;
}
//如果沒有找到比其小的數據可以整除,則表示該數是素數
if(i==j){
System.out.println(i);
}
}
}
}

㈢ Java語言中,用類的方法求素數

importjava.util.ArrayList;
importjava.util.Scanner;

publicclassPrimeNumber{
/**
*判斷一個數是否是素數
*@paramnumber
*@return
*/
publicbooleanisPrimeNumber(intnumber){
booleanisPrimeNumber=false;
intflag=0;
for(inti=2;i<number;i++){
if(number%i==0){
flag=1;
}
}
if(flag==0){
isPrimeNumber=true;
}
returnisPrimeNumber;//返回true時為素數
}
/**
*得到一個區間的素數
*@paramstartNo
*@paramendNo
*@return
*/
publicArrayList<Integer>getPrimeNumber(intstartNo,intendNo){
ArrayList<Integer>list=newArrayList<Integer>();
for(intnum=startNo;num<=endNo;num++){
if(newPrimeNumber().isPrimeNumber(num)){
list.add(num);
}
}
returnlist;
}
/**
*測試
*@paramargs
*/
publicstaticvoidmain(String[]args){
PrimeNumberprimeNumber=newPrimeNumber();
ArrayList<Integer>list=null;
System.out.println("請輸入你要測試的數");
intinput=newScanner(System.in).nextInt();
if(primeNumber.isPrimeNumber(input)==true){
System.out.println("您輸入的數為素數");
}
else{
System.out.println("您輸入的數不是素數");
}
System.out.println("請輸入你所要求素數的區間");
System.out.println("請輸入區間的下限(較小值)");
intstartNo=newScanner(System.in).nextInt();
System.out.println("請輸入區間的上限(較大值)");
intendNo=newScanner(System.in).nextInt();
list=primeNumber.getPrimeNumber(startNo,endNo);
System.out.println("您的區間素數為");
for(inti=0;i<list.size();i++){
System.out.print(list.get(i)+" ");
}
System.exit(0);
}
}

㈣ java里怎麼實現素數

importjava.util.Scanner;

//質數又稱素數,是指在一個大於1的自然數中,除了1和此整數自身外,不能被其他自然數整除的數
publicclassPrimeNumber{

publicstaticvoidmain(String[]args){

Scannerscan=newScanner(System.in);//掃描器,接收控制台輸入信息

System.out.print("請輸入一個整數:");

try{
intnum=scan.nextInt();//取出控制台輸入的信息
if(isPrime(num)){//調用isPrime()方法

System.out.println(num+"是素數!");//若isPrime()方法返回true,輸出是素數

}else{

System.out.println(num+"不是素數!");//若isPrime()方法返回false,輸出不是素數
}
}catch(Exceptione){
System.out.println("請輸入整數");//捕捉異常,若輸入的不是整數,輸出異常
}
}

/**
*<pre>
*用於判斷一個數是否為素數,若為素數,返回true,否則返回false
*</pre>
*
*@parama
*輸入的值
*@returntrue、false
*/
publicstaticbooleanisPrime(inta){

booleanflag=true;

if(a<2){//素數不小於2
returnfalse;
}else{

for(inti=2;i<=Math.sqrt(a);i++){

if(a%i==0){//若能被整除,則說明不是素數,返回false

flag=false;
break;//跳出循環
}
}
}
returnflag;
}
}

閱讀全文

與求素數的java演算法相關的資料

熱點內容
php獲取原始數據 瀏覽:244
pic單片機如何編程 瀏覽:888
javabyte寫文件 瀏覽:319
java獲取類包名 瀏覽:888
ftp命令編碼格式 瀏覽:298
程序員那麼可愛陸離穿正裝 瀏覽:169
源碼的賬號密碼在哪個文件 瀏覽:437
如何在中國農業銀行app綁定銀行卡 瀏覽:992
shopnum1多用戶商城系統源碼 瀏覽:746
紅包廣告平台源碼 瀏覽:772
硬碟格式化時用的dos命令是 瀏覽:942
找人緩解壓力 瀏覽:938
iphone的pdf 瀏覽:351
90壓縮餅干怎麼吃 瀏覽:668
php教材下載 瀏覽:915
什麼解壓密碼最好 瀏覽:590
資料庫與伺服器如何連接 瀏覽:444
架構師需要閱讀的源碼 瀏覽:483
ch編譯器 瀏覽:456
java必須自己寫一個編譯器嗎 瀏覽:944