1. 誰能幫忙找下錯誤用java求一百以內的質數,謝了!
你好!
這個代碼結果是挺對的。雖然不是那麼的優化,在數字小的情況下就無所謂了。
希望對你有所幫助,望採納。
2. java編程:求100以內的質數
因為i%i=0;多一個等號flag怎麼著判定都是true。懂?
3. java 1到100內的質數
int i,j;
for(i = 2; i <= 100; i++){//從2數到100,判斷之間的每一個數是否是質數
//下面的循環是質數判斷過程
for(j = 2; j <= i/2; j++){
if(i % j == 0)
break;//如果這個數能被一個數整除,那麼這個數不是質數。break的作用是跳出此次循環,進入下一次循環。
}
if(j > i/2){
System.out.println(i);//如果這個數不能被自身1/2的數整除,他就是質數,輸出這個數.System.out.println()這個語句就是輸出語句
}
}
System.out.println();//這句語句是多餘的,什麼也沒列印。
完整代碼及運行結果如圖。
拓展資料
質數(prime number)又稱素數,有無限個。質數定義為在大於1的自然數中,除了1和它本身以外不再有其他因數。
這道題只要理解質數的計算方法就容易解答。
4. 求一個計算1到100以內所有質數之和的JAVA程序代碼以及以及位碼和流程圖,我是JAVA初學者,求幫助,謝謝!
原理:用一個數除以,除它本身和1以外的所有數,都不能整除;
public static void main(String args[])
{
int i, j; //聲明變數i,j;
int sum=0; //聲明sum初始值為0;
for (i = 2; i <= 100; i++) //1至100的數,被除數
{
for (j = 2; j <i; j++) //除數
{
if (i % j == 0) {
break; //如果余數為0這跳出if跳到第一個for循環,再次執行
}
if (j >=(i-1)) //滿足第一個if並滿足第二個if則輸出i的值
{ sum=sum+i; //所有素數相加;
System.out.println(i);//輸出i的值
}
}
System.out.println("所有素數何為"+sum);
}
}
5. 用JAVA編程做個顯示1-100之內的質數這個題該怎麼做
質數就是素數。
質數只能被1和他本身整除,所以根據這個這個特性很好找出來。
盡量少用取模運算,浪費時間,你可以用
for(int
i
=
0;
i
<=
100;
i=i+2){
...//程序體
}
這樣2,4,6,8都可以不用取模了,只需要對3,5,7,9進行取模判斷。程序里很多單詞不同意思沒關系,只是個代號而已,用上幾次就記得了,英語不好看api起來就有點累了,不過看多了也就看的懂了,總之要多看多寫
6. Java求100以內的質數的小代碼!
1、設計實現:通過for循環輸出,使用break跳出。
(1)需求:輸出1~100的所有素數。
(2)素數:
--判斷條件1:只能被1和本身整除的稱為素數。
--判斷條件2:在區間(1,x/2)中找不到能整除素數x的整數。
--判斷條件3:在區間(1,sqrt(x))中找不到能整除素數x的整數。
(3)完整代碼如下:
7. java求1到100以內的質數
2是質數,你那裡for(int a=2;a<b;a++)就不符合條件所以2沒有輸出來,輸出語句System.out.print(b+"\t")放在第二個循環里又有沒有限定條件於是當b%a!=0時候即單數時候就輸出,當然會循環b-2次同樣的結果,碰到質數因為質數的性質所以只輸出一次結果。你寫的都有問題,重新整理思路再寫一遍吧。
8. 利用Java編寫應用程序求100以內的全部素數
質數又稱素數。一個大於1的自然數,如果除了1和它自身外,不能被其他自然數整除的數;否則稱為合數。根據算術基本定理,每一個比1大的整數,要麼本身是一個質數,要麼可以寫成一系列質數的乘積;而且如果不考慮這些質數在乘積中的順序,那麼寫出來的形式是唯一的。下面是一個java求100之內的素數簡單示例。
public class test {
public static void main(String[] args) {
int i,n,k=0;
for (n = 3; n<=100; n++) { //3~100的所有數
i=2;
while (i<n) {
if (n%i==0) break; //若能整除說明n不是素數,跳出當前循環
i++;
}
if (i==n) { //如果i==n則說明n不能被2~n-1整除,是素數
k++; //統計輸出數的個數
System.out.print(i+ " ");
if (k %6==0) //每輸出5個則換行
System.out.println();
}
}
}
}
9. java 如何輸出1到100間的質數
參考代碼如下:
package test;
public class Test {
public static void main(String[] args) {
int j;
for (int i = 2; i <= 100; i++) // 1不是素數,所以直接從2開始循環
{
j = 2;
while (i % j != 0)
j++; // 測試2至i的數字是否能被i整除,如不能就自加
if (j == i) // 當有被整除的數字時,判斷它是不是自身
System.out.println(i); // 如果是就列印出數字
}
}
}
(9)100以內的質數java擴展閱讀:
質數又稱素數。一個大於1的自然數,除了1和它自身外,不能整除其他自然數的數叫做質數;否則稱為合數。
Java是一門面向對象編程語言,不僅吸收了C++語言的各種優點,還摒棄了C++里難以理解的多繼承、指針等概念,因此Java語言具有功能強大和簡單易用兩個特徵。Java語言作為靜態面向對象編程語言的代表,極好地實現了面向對象理論,允許程序員以優雅的思維方式進行復雜的編程。
10. 用Java求100以內的質數
我給的答案是可以你輸入的數以內的所有質數
importjava.util.Scanner;
publicclasstest2{
publicstaticvoidmain(Stringarg[]){
System.out.println("請輸入要求除的質數");
Scannerin=newScanner(System.in);
intnum=in.nextInt();
inta=0;
for(intj=num;j>1;j--){
for(inti=2;i<j;i++){
if(j%i==0){
a++;
}
}
if(a==0){
System.out.println(j+"是質數。");
}
else{
a=0;
}
}
}
}
親測可用