導航:首頁 > 源碼編譯 > 求素數的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演算法相關的資料

熱點內容
解壓小視頻手速 瀏覽:150
我的世界伺服器卡沒血如何修改 瀏覽:159
vba入門到精通pdf 瀏覽:111
tomcat怎麼一個伺服器部署 瀏覽:793
phphttps介面 瀏覽:893
javabyte數組int 瀏覽:806
公司網路共享的文件夾 瀏覽:998
拍臉搭配衣服是什麼app 瀏覽:916
歐珀手機怎麼更改加密密碼 瀏覽:508
程序員那麼可愛陸漓氣人語錄 瀏覽:904
python中del刪除 瀏覽:457
華為雲耀伺服器和ecs區別 瀏覽:730
ruby語法編譯語言 瀏覽:569
U盤加密以後文件破損 瀏覽:287
改變路由器加密類型 瀏覽:306
java換行空格 瀏覽:834
程序員的等級有哪些 瀏覽:728
小學編程教師試講15分試講視頻 瀏覽:226
wincc編譯在哪 瀏覽:476
華為演算法比賽 瀏覽:553