java素?cái)?shù)代碼 java求素?cái)?shù)

用java求100以內(nèi)的全部素?cái)?shù)

這個(gè)的主要點(diǎn)是嵌套的循環(huán),要注意循環(huán)要遍及數(shù)據(jù)的循環(huán)、邏輯判斷,素?cái)?shù)就是表示除1及其本身外不能被其他比他小的整數(shù)整除,掌握這點(diǎn)就可以理解了,下面代碼僅供參考:

創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的九龍坡網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

//實(shí)現(xiàn)求1-100之間的所有素?cái)?shù)

public?class??Test

{

public?static?void?main(String[]?args)?

{

//使用外層循環(huán)來控制1-100的數(shù)據(jù)的遍歷

for(int?i?=?1?;?i?=?100?;?i++){

//素?cái)?shù)就是除1及其本身外不能被其他整數(shù)整除

int?j?=?2;

while(i??j){

//如果可以被小于他的數(shù)據(jù)整除,表示該數(shù)不是素?cái)?shù),跳出循環(huán)

if(i?%?j?==?0){

break;

}

j++;

}

//如果沒有找到比其小的數(shù)據(jù)可以整除,則表示該數(shù)是素?cái)?shù)

if(i?==?j){

System.out.println(i);

}

}

}

}

java代碼實(shí)現(xiàn)101-200的素?cái)?shù)

/**

*

需求:

求101-200之內(nèi)的素?cái)?shù)?

*/

public

class

demo3

{

public

static

void

main(string[]

args)

{

//

內(nèi)循環(huán)判斷是否為素?cái)?shù),外循環(huán)控制打印

int

num,

i;

int

count

=

0,

sum

=

0;

for

(num

=

101;

num

=

200;

num++)

{

for

(i

=

2;

i

num;

i++)

{

if

(num

%

i

==

0)

{

break;

}

}

if

(num

==

i)

{

sum

+=

num;

count++;

system.out.print(num

+

"\t");

if

(count

%

5

==

0)

{

system.out.println();

}

}

}

system.out.println();

system.out.println("101到200之間所有素?cái)?shù)的和為"

+

sum);

}

}

利用Java編寫應(yīng)用程序求100以內(nèi)的全部素?cái)?shù)

質(zhì)數(shù)又稱素?cái)?shù)。一個(gè)大于1的自然數(shù),如果除了1和它自身外,不能被其他自然數(shù)整除的數(shù);否則稱為合數(shù)。根據(jù)算術(shù)基本定理,每一個(gè)比1大的整數(shù),要么本身是一個(gè)質(zhì)數(shù),要么可以寫成一系列質(zhì)數(shù)的乘積;而且如果不考慮這些質(zhì)數(shù)在乘積中的順序,那么寫出來的形式是唯一的。下面是一個(gè)java求100之內(nèi)的素?cái)?shù)簡(jiǎn)單示例。

public class test {

public static void main(String[] args) {

int i,n,k=0;

for (n = 3; n=100; n++) {???? //3~100的所有數(shù)

i=2;

while (in) {

if (n%i==0)? break;? //若能整除說明n不是素?cái)?shù),跳出當(dāng)前循環(huán)

i++;

}

if (i==n) {???? //如果i==n則說明n不能被2~n-1整除,是素?cái)?shù)

k++;???????????? //統(tǒng)計(jì)輸出數(shù)的個(gè)數(shù)

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

if (k %6==0)??? //每輸出5個(gè)則換行

System.out.println();

}

}

}

}

求一個(gè)用java編寫的1到100內(nèi)的素?cái)?shù),并且每行輸出5個(gè)素?cái)?shù)

public class Test {

public static void main(String[] args) {

int i, count = 0;

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

if(isPrimeNumber(i) == true){

count++;

System.out.printf("%6d", i);

if(count%5 == 0){

System.out.println();

}

}

}

//判斷一個(gè)數(shù)是否是素?cái)?shù),若是,返回true,否則返回false

public static boolean isPrimeNumber(int num){

int k = (int) Math.sqrt(num);

if(num == 2){

return true;

for(int i=2; i=k; i++)

if(num%i == 0)

return false;

return true;

}

}

擴(kuò)展:

質(zhì)數(shù)又稱素?cái)?shù)。一個(gè)大于1的自然數(shù),除了1和它自身外,不能被其他自然數(shù)整除的數(shù)叫做質(zhì)數(shù);否則稱為合數(shù)。

質(zhì)數(shù)的個(gè)數(shù)是無窮的。歐幾里得的《幾何原本》中有一個(gè)經(jīng)典的證明。它使用了證明常用的方法:反證法。具體證明如下:假設(shè)質(zhì)數(shù)只有有限的n個(gè),從小到大依次排列為p1,p2,……,pn,設(shè)N=p1×p2×……×pn,那么,

是素?cái)?shù)或者不是素?cái)?shù)。

如果

為素?cái)?shù),則

要大于p1,p2,……,pn,所以它不在那些假設(shè)的素?cái)?shù)集合中。

如果 為合數(shù),因?yàn)槿魏我粋€(gè)合數(shù)都可以分解為幾個(gè)素?cái)?shù)的積;而N和N+1的最大公約數(shù)是1,所以不可能被p1,p2,……,pn整除,所以該合數(shù)分解得到的素因數(shù)肯定不在假設(shè)的素?cái)?shù)集合中。因此無論該數(shù)是素?cái)?shù)還是合數(shù),都意味著在假設(shè)的有限個(gè)素?cái)?shù)之外還存在著其他素?cái)?shù)。所以原先的假設(shè)不成立。也就是說,素?cái)?shù)有無窮多個(gè)。

其他數(shù)學(xué)家給出了一些不同的證明。歐拉利用黎曼函數(shù)證明了全部素?cái)?shù)的倒數(shù)之和是發(fā)散的,恩斯特·庫默的證明更為簡(jiǎn)潔,哈里·弗斯滕伯格則用拓?fù)鋵W(xué)加以證明。

編寫java程序找出2-100之間的所有素?cái)?shù) 求大神

編寫java程序找出2-100之間的所有素?cái)?shù) 求大神 素?cái)?shù)又稱質(zhì)數(shù),有無限個(gè)。素?cái)?shù)定義為在大于1的整數(shù)中,除了1和它本身以外不再有其他因數(shù)的數(shù)稱為素?cái)?shù)。

java程序找出2-100之間的所有素?cái)?shù),代碼如下:

public void findPrimeNumber(){

存放素?cái)?shù)集合

ListInteger lists=new ArrayListInteger();

遍歷2-100

for(int x=2;x100;x++){

標(biāo)志是否為素?cái)?shù),默認(rèn)是true

boolean flag=true;

循環(huán)x除以(x/2)的數(shù),能整除則不是是素?cái)?shù)(不包含2)

for(int y=2;yx/2;y++){

if(x%y==0){

能整除,則把標(biāo)志設(shè)置為false,不是素?cái)?shù)

flag=false;

break;

}

}

if(flag){

flag還是true,則是素?cái)?shù)

lists.add(x);

}

}

System.out.println("2-100的素?cái)?shù)集合:"+lists);

}

結(jié)果:

2-100的素?cái)?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]

求1到100之間的所有素?cái)?shù)。求程序

#includestdio.h int isprime(int n){ int i; if(n=1)return 0; for(i=2;i=n/2;i++){ if(n%i==0)return 0; } return 1; } main() { int i; for(i=1;i=100;i++) { if(isprime(i)) printf("%d \n",i); } }

編一個(gè)程序題:100~500之間的所有素?cái)?shù),

給你搞來一份C的,但是是求和的,如果你是學(xué)C的,應(yīng)該會(huì)改吧

#include "stdio.h"

void main()

{

int i,temp,j;

long sum=0;

for(i=100;i500;i++)

{

temp=0;

for(j=2;ji;j++)

if(i%j==0)

temp++;

if(temp==0)

sum+=i;

}

printf("%ld",sum);

}

下面的是pascal的

var

i,j:longint;

b:boolean;

begin

for i:=100 to 500 do

begin

for j:=2 to trunc(sqrt(i)) do

begin

b:=true;

if i mod j=0

then begin

b:=false;

break;

end;

end;

if b then writeln(i);

end;

end.

找出100到200之間的所有素?cái)?shù)并求和

#include stdio.h#include math.hint primer(int min, int max){ int j,k,i; int sum = 0; for(i = min + 1;i = max; i += 2) { k = sqrt(i); for(j = 2;j = k;j++) { if(i % j ==0)break; } if(j = k + 1) { printf("%d ",i); sum += i; } } return sum;}int main(){ int min = 100, max = 200; int sum = 0; sum = primer(min, max); printf("sum:%d\n", sum); return 0;}

vb 編寫程序求出100-200間的所有素?cái)?shù)

Sub test()

Dim i As Integer

Dim j As Integer

Dim m As Boolean

For i = 100 To 200

m = True

For j = 2 To i ^ 0.5

If i Mod j = 0 Then

m = False

Exit For

End If

Next j

If m Then Print i

Next i

End Sub

vb編寫程序找出3~100間所有素?cái)?shù)并輸出窗體

Private Sub form_click()

Dim N As Integer

Dim I As Integer

Dim J As Integer

Dim S As Boolean

N = 0

For I = 3 To 100

S = True

For J = 2 To Sqr(I)

If I Mod J = 0 Then

S = False

Exit For

End If

Next

If S Then

Print Format(I, " 0# ");

N = N + 1

If N Mod 10 = 0 Then Print

End If

Next

Print

Print "從3-100之間共有以上"; N; "個(gè)素?cái)?shù)"

End Sub

C#編寫程序,找出1---100之間的所有質(zhì)數(shù)

Listint list1 = new Listint();

list1.Add(2);2是質(zhì)數(shù),先加它

bool b;

for (int i = 3; i 100; i += 2)偶數(shù)的不用比較了

{

b = true;

for (int j = i - 1; j 1; j--)

{

if (i % j == 0)

{

b = false;

break;有一個(gè)能整除的就不再試其它了

}

}

if (b) list1.Add(i);是質(zhì)數(shù)則添加到列表中

}

這樣,list1中的所有數(shù)就是你想要的數(shù)了

編寫VB程序,將500到1000之間的所有素?cái)?shù)輸出到列表框

private sub mand1_click()

for i = 500 to 1000

for j = 2 to fix(sqr(i))

if i mod j = 0 then

exit for

elseif i mod j 0 and j = fix(sqr(i)) then

list1.additem i

end if

next

next

end sub

編程:輸出3 ~ 100之間的所有素?cái)?shù)?

int i;

for(i=2;in/2+1;i++)

{

if(n%i==0)

return false;

}

return true;

}

main()

{

int i,count=0;

for(i=100;i=300;i++)

{

if(IsPrime(i))

{

couti;

count++;

if(count%5==0)

cout"\n";

else

cout" ";

}

}

}

編寫一個(gè)java程序,用窮舉法找出2~50之間的素?cái)?shù),并打印出來.

public static void main(String[] args) {

int i, k;

boolean yes;

for (k = 2; k = 50; k++) {

yes = true;

i = 2;

while (i = k - 1 yes) {

if (k % i == 0)

yes = false;

i++;

}

if (yes)

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

}

}

文章標(biāo)題:java素?cái)?shù)代碼 java求素?cái)?shù)
當(dāng)前網(wǎng)址:http://www.muchs.cn/article18/hjeigp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供關(guān)鍵詞優(yōu)化、云服務(wù)器、搜索引擎優(yōu)化、營銷型網(wǎng)站建設(shè)、網(wǎng)站導(dǎo)航品牌網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名