5道Java基礎(chǔ)編程練習(xí)題

5道Java基礎(chǔ)編程練習(xí)題

長沙牛耳教育      2022-05-06 01:56:01     53

5道Java基礎(chǔ)編程練習(xí)題,1.指數(shù)計算問題有一對兔子,從出生后第3個月起每個月都生一對兔子,小兔子長到第三個月后每個月又生一對兔子,假如兔子都不死,

課程價格 請咨詢

上課時段: 授課校區(qū):

詳細(xì)介紹


    1.指數(shù)計算問題


    有一對兔子,從出生后第3個月起每個月都生一對兔子,小兔子長到第三個月后每個月又生一對兔子,假如兔子都不死,問每個月的兔子對數(shù)為多少?

    程序分析:兔子的規(guī)律為數(shù)列1,1,2,3,5,8,13,21....

    publicclassProg1{

    publicstaticvoidmain(String[]args){

    intn=10;

    System.out.println("第"+n+"個月兔子總數(shù)為"+fun(n));

    }

    privatestaticintfun(intn){

    if(n==1||n==2)

    return1;

    else

    returnfun(n-1)+fun(n-2);

    }}


    2.指定范圍包含的素數(shù)

    判斷101-200之間有多少個素數(shù),并輸出所有素數(shù)。

    程序分析:判斷素數(shù)的方法:用一個數(shù)分別去除2到sqrt(這個數(shù)),如果能被整除,則表明此數(shù)不是素數(shù),反之是素數(shù)。

    publicclassProg2{

    publicstaticvoidmain(String[]args){

    intm=1;

    intn=1000;

    intcount=0;

    //統(tǒng)計素數(shù)個數(shù)

    for(inti=m;i<n;i++){

    if(isPrime(i)){

    count++;

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

    if(count%10==0){

    System.out.println();

    }

    }

    }

    System.out.println();

    System.out.println("在"+m+"和"+n+"之間共有"+count+"個素數(shù)");

    }

    //判斷素數(shù)

    privatestaticbooleanisPrime(intn){

    booleanflag=true;

    if(n==1)

    flag=false;

    else{

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

    if((n%i)==0||n==1){

    flag=false;

    break;

    }

    else

    flag=true;

    }

    }

    returnflag;

    }}


    3.水仙花數(shù)

    打印出所有的"水仙花數(shù)",所謂"水仙花數(shù)"是指一個三位數(shù),其各位數(shù)字立方和等于該數(shù)本身。例如:153是一個"水仙花數(shù)",因為153=1的三次方+5的三次方+3的三次方。

    程序分析:利用for循環(huán)控制100-999個數(shù),每個數(shù)分解出個位,十位,百位。

    publicclassProg3{

    publicstaticvoidmain(String[]args){

    for(inti=100;i<1000;i++){

    if(isLotus(i))

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

    }

    System.out.println();

    }

    //判斷水仙花數(shù)

    privatestaticbooleanisLotus(intlotus){

    intm=0;

    intn=lotus;

    intsum=0;

    m=n/100;

    n-=m*100;

    sum=m*m*m;

    m=n/10;

    n-=m*10;

    sum+=m*m*m+n*n*n;

    if(sum==lotus)

    returntrue;

    else

    returnfalse;

    }}


    4.分解質(zhì)因數(shù)

    將一個正整數(shù)分解質(zhì)因數(shù)。例如:輸入90,打印出90=233*5。

    程序分析:對n進行分解質(zhì)因數(shù),應(yīng)先找到一個最小的質(zhì)數(shù)k,然后按下述步驟完成:

    (1)如果這個質(zhì)數(shù)恰等于n,則說明分解質(zhì)因數(shù)的過程已經(jīng)結(jié)束,打印出即可。(2)如果n<>k,但n能被k整除,則應(yīng)打印出k的值,并用n除以k的商,作為新的正整數(shù)n,重復(fù)執(zhí)行第一步。(3)如果n不能被k整除,則用k+1作為k的值,重復(fù)執(zhí)行第一步。

    publicclassProg4{

    publicstaticvoidmain(String[]args){

    intn=13;

    decompose(n);

    }

    privatestaticvoiddecompose(intn){

    System.out.print(n+"=");

    for(inti=2;i<n+1;i++){

    while(n%i==0&&n!=i){

    n/=i;

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

    }

    if(n==i){

    System.out.println(i);

    break;

    }

    }

    }}


    5.條件運算符使用

    利用條件運算符的嵌套來完成此題:學(xué)習(xí)成績>=90分的同學(xué)用A表示,60-89分之間的用B表示,60分以下的用C表示。

    程序分析:(a>b)?a:b這是條件運算符的基本例子。

    publicclassProg5{

    publicstaticvoidmain(String[]args){

    intn=-1;

    try{

    n=Integer.parseInt(args[0]);

    }catch(ArrayIndexOutOfBoundsExceptione){

    System.out.println("請輸入成績");

    return;

    }

    grade(n);

    }

    //成績等級計算

    privatestaticvoidgrade(intn){

    if(n>100||n<0)

    System.out.println("輸入無效");

    else{

    Stringstr=(n>=90)?"分,屬于A等":((n>60)?"分,屬于B等":"分,屬于C等");

    System.out.println(n+str);

    }

    }}



 以上就是長沙牛耳教育java培訓(xùn)機構(gòu)的小編針對“5道Java基礎(chǔ)編程練習(xí)題”的內(nèi)容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務(wù)。


培訓(xùn)啦提醒您:交易時請核實對方資質(zhì),對于過大宣傳或承諾需謹(jǐn)慎!任何要求預(yù)付定金、匯款等方式均存在風(fēng)險,謹(jǐn)防上當(dāng)。