1樓:網友
程式的錯誤和警告幫磨鎮你改簡遊鏈好了,沒有攔孫驗證你程式:
#include ""
#include ""
int main()
int a=1,i=1,x=1;
scanf("%d",&a);
while(i==a-1)
i=i+1;
x=a%i;
if(x==0)
printf("no");
continue;
elseprintf("yes");
2樓:網友
int main()
int a,x,i=1;
scanf("%d",&a);
while(i
原程式邏輯有問題,光改語法不能實現,對邏輯進行了修改,還有a輸入必須大於1,如果等於1會輸出yes,而1既不是素數也不是合數,小於等於0的不討論。
3樓:匿名使用者
錯誤太多了 首先是 while(i==a-1) 這一句應該改為 while(i還有 中間**好讓有邏此櫻輯錯誤。
我寫乙個簡單的。
int main()
int a=1,i=1,x=1;
scanf("%d",&a);
while(ii=i+1;
if(a%i==0)
x=0;break;
if(x==0)
printf("no");
else printf("森襪叢yes");
return 0;
素數程式改錯
4樓:波波羅克羅伊斯
#include
#include/*要包含才能用sqrt求開方*/int pdss (int m);
void main()
int pdss (int m)
else }
c++:尋找素數的小程式 改錯
5樓:徐章林
1全部首先,你這個不是求素數,是奇數,給你改了。還有,輸入函式的位置應該不應該在迴圈裡面是要請注意的,你之所以會輸入n個相等的數,就是把輸出位置放錯了,我覺得書寫的格式也要注意,因為這樣可以使你的程式更加清析易讀,也容易找到錯誤。
#include
int main()
if(flag==1)
std::cout<} return 0;}
幫我這個100內素數程式改錯
6樓:網友
if(b==a-1)printf("%d,",a); 改成a 因為你前面b++做過了。
c++程式改錯(輸入乙個數,找出小於它的所有素數)
7樓:網友
for(j>1;j1不是初始化,應該改成j=1
三個不同的質數之積恰好是他們和的17倍,求這三個質數。 (詳細過程)
8樓:風遙天下
這3個數是: 2,17,19
我是這麼算的:首先x*y*z=17(x+y+z)即就是: x*y*z/17是乙個整數,因為質數只能被它本身整除。所以三個數中有乙個是17
就有x+y+17=x*y
一種方法是:
知道從2開始的質數是,2,3,5,7,11,13,17,19,23……
嘗試著帶就可以了。
結果是:2*17*19=17*(2+17+19)還有一種是:(補上)
將 x+y+17=x*y 化簡可得。
x=(y+17)/(y-1)
分析等號右邊的分數,我們知道,y值越大,則分母和分子的比值越小,越趨近於1,但永遠不等於1,所以我們取x=2,帶進去算得y剛好等於19
符合我們的條件:三個數都是質數。ok
還有:質數是隻能被本身和1整除的自然數。
9樓:凌誠出溪
由於是質數,所以xyz中有乙個是17的倍數必為17設x=17,代入得到17+y+z=yz
移項得到:(y-1)(z-1)=18
所以有y=2,z=19為唯一解。
綜上得到這三個數為2,17,19
這樣可以了嗎?
10樓:陰陽雙鋒劍
很簡單 設三個數a,b,c
有abc=17(a+b+c)
abc的質因數為a,b,c 而17有是abc的質因數不妨設a=17 則有bc=17+b+c
即(b-1)(c-1)=18
則18=1*18=2*9=3*6 經檢驗 b=2,c=19符合那麼這三個數就是2,17,19
c語言求素數程式改錯
11樓:濮方雅
稍微改了下,可能罩拿空可讀性會好一些,以下**供參考:
#include 《物瞎》
判斷敏畝素數*/
int isprime (int m)
int i;
if (m ==2) return 1;
if (m ==1 ||m % 2 ==0) return 0;
for (i = 3; i * i <=m;)if (m % i ==0) return 0;
i +=2;
return 1;
int main()
int i,j,n;
for(n=10001;n<20000;n++)for(i=2;i*iprintf("%d = d * d ",n,i,n/i);
break;
return 0;
三個質數的倒數的和是231分之131,求這三個質數,要過程帶算理
12樓:網友
三個質數的倒數相加必然要通分,所以先看看分母。
所以必然是這三個質數的倒數的和,因為是其他質數的話就會反映在分母上。驗證後,果然等譯131/231。
13樓:網友
231=3×7×11;
所以分別是3,7,11
您好,很高興為您解答,skyhunter002為您答疑解惑如果本題有什麼不明白可以追問,如果滿意記得采納如果有其他問題請採納本題後另發點選向我求助,答題不易,請諒解,謝謝。
祝學習進步。
14樓:網友
231=3x7x11
所以可得這三個質數為和11
判斷數是不是質數的演算法,流程圖,判斷一個數是不是質數的演算法,流程圖
兩個演算法 1。輸入一個數n flag 0 for int i 2 i for int j 2 j if flag 0 printf 是質數 2.輸入一個數n flag 0 for int i 2 i if int n i n i int n i 1 printf 不是質數 flag 1 break...
判斷數是否是質數判斷一個數是否是質數
根據質數的定義,在判斷一個數n是否是質數時,只要用1至n 1去除n,看看能否整除即可。還有更好的辦法 先找一個數m,使m的平方大於n,再用小於等於m的質數去除n n為被除數 如果都不能整除,則n必然是質數。如我們要判斷1993是不是質數,50 50 1993,那麼只要用1993除以 50的質數看是否...
c 判斷數是否為質數,C 判斷一個數是否為質數
方法一 將m被 2 m 1 之間的每一個整數去除,如果都不能被整除,所以m是一個質數。方法二 將m被 2 m之間的每一個整數去除。如果m不能被 2 m 間任一整數整除,m必定是質數。兩段 的輸出結果相同。輸入一個整數 1 所以1是質數。輸入一個整數 97 所以97是質數。輸入一個整數 10 所以10...