Day12_02

一.循環(huán)結(jié)構(gòu)與分支結(jié)構(gòu)的嵌套練習(xí)

1.輸入一個(gè)數(shù),判斷是不是素?cái)?shù)(只能被1和自身整除的數(shù))

import java.util.Scanner;
public class Text1 {
        public static int  sort(int count) {
        count = (count + 1) * 2;
        return count;
    }
    public static void main(String[] args) {
        
         Scanner input = new Scanner(System.in); System.out.println("請(qǐng)輸入一個(gè)數(shù)");
         *int a =input.nextInt(); boolean isPrime=true; for(int i =2;i<a;i++){
         if(a%i==0){ isPrime=false; break; } } System.out.println(a
          +(isPrime?"是":"不是")+"素?cái)?shù)"); input.close();
         

2.打印100以內(nèi)的質(zhì)數(shù)株汉;

        for (int i = 1; i <= 100; i++) {
            boolean isPrime = true;
            for (int j = 2; j < Math.sqrt(i); j++) {
                if (i % j == 0) {
                    isPrime = false;
                    break;
                }

            }
            if (isPrime) {
                System.out.println(i);
            }

        }

3.九九乘法表

        for(int i=1;i<=9;i++){
            for(int j=1;j<=i;j++){
                System.out.printf("%d*%d=%d\t",j,i,j*i);
            }
            System.out.println("");
        }

4.猴子吃桃問(wèn)題

        int count = 1;
        for (int i = 1; i < 10; i++) {
            sort(count);
        }
        System.out.println(count);
        
    
    }
    
}

.窮舉法案列:100塊錢買一百只雞

public class HomeWork1 {
    public static void main(String[] args) {

        for (int gj = 0; gj <= 20; gj++) {
            for (int mj = 0; mj <= 33; mj++) {
                int xj = 100 - gj - mj;
                if (5 * gj + 3 * mj + xj / 3 == 100 && (gj + mj + xj) == 100 && xj % 3 == 0) {
                    System.out.println("公雞有 " + gj + "  母雞有 " + mj + "  小雞有 " + xj);
                }

            }
        }
    }
}

二.兩個(gè)典型案列

1.Graps賭博游戲:

<1>我的代碼
package comeDay12_01_2;

import java.util.Scanner;

public class Homework2 {
    public static void main(String[] args) {
        System.out.println("******************游戲規(guī)則**************************");
        System.out.println("**玩家總共1000分,每次贏加100分蝙云,每次輸扣100分,平局分?jǐn)?shù)不變**");
        System.out.println("**************************************************");
        System.out.println("準(zhǔn)備好開(kāi)始了嗎路召,按\"1\"退出,其他任意鍵繼續(xù):");
        int fen = 200;
        int num = 0;
        int num1 = 0;

        Scanner input = new Scanner(System.in);
        String zb = input.nextLine();
        if (zb.equals("1")) {
            System.out.println("游戲結(jié)束优训,還剩" + fen + "分");
        } else {
            int a = (int) (Math.random() * 6 + 1);
            int b = (int) (Math.random() * 6 + 1);
            num = a + b;
            if (num == 7 || num == 11) {
                fen += 100;
                System.out.println("玩家勝利朵你,搖出了" + num + "點(diǎn),當(dāng)前分?jǐn)?shù)" + fen);
            } else if (num == 2 || num == 3 || num == 12) {
                fen -= 100;
                System.out.println("電腦勝利,搖出了" + num + "點(diǎn),當(dāng)前分?jǐn)?shù)" + fen);
            } else {
                System.out.println("平局揣非,搖出了" + num + "點(diǎn),當(dāng)前分?jǐn)?shù)" + fen);
            }

            System.out.println("按\"1\"退出抡医,其他任意鍵繼續(xù):");
            String zb1 = input.nextLine();
            if (zb1.equals("1")) {
                System.out.println("游戲結(jié)束");
            } else {
                do {
                    int a1 = (int) (Math.random() * 6 + 1);
                    int b1 = (int) (Math.random() * 6 + 1);

                    num1 = a1 + b1;

                    if (num == num1) {
                        fen += 100;
                        System.out.println("玩家勝利,搖出了" + num1 + "點(diǎn),當(dāng)前分?jǐn)?shù)" + fen);
                    } else if (num1 == 7) {
                        fen -= 100;
                        System.out.println("電腦勝利,搖出了" + num1 + "點(diǎn),當(dāng)前分?jǐn)?shù)" + fen);
                    } else {
                        System.out.println("平局忌傻,搖出了" + num1 + "點(diǎn),當(dāng)前分?jǐn)?shù)" + fen);
                    }

                    System.out.println("按\"1\"退出大脉,其他任意鍵繼續(xù):");
                    String zb2 = input.nextLine();
                    if (zb2.equals("1")) {
                        System.out.println("游戲結(jié)束");
                    } else {
                        int a2 = (int) (Math.random() * 6 + 1);
                        int b2 = (int) (Math.random() * 6 + 1);
                        a1 = a2;
                        b1 = b2;

                    }

                } while (fen > 0);
                System.err.println("你已經(jīng)輸完了!Kⅰ镰矿!無(wú)法繼續(xù)了!7帧秤标!");
            }
        }
        input.close();

    }

}
<2>教師代碼
  • switch case 結(jié)構(gòu)中,case后面若不跟break宙刘,程序會(huì)繼續(xù)執(zhí)行下去苍姜,直到出現(xiàn)break為止
public class HomeWork__ {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        int money = 1000;
        do {
            System.out.println("你還有"+money+"元!");
            
            int bet;
            
            do {
                
                System.out.println("請(qǐng)下注");
                bet=input.nextInt();
                
            } while (bet<=0||bet>money);
            
            int face1 = (int) (Math.random() * 6 + 1);
            int face2 = (int) (Math.random() * +1);
            int firsstPoint = face1 + face2;
            System.out.println("玩家搖出" + firsstPoint + "點(diǎn)");
            boolean needsGoOn = false;
            switch (firsstPoint) {
            case 7:
            case 11:
                System.out.println("玩家勝");
                money+=bet;
                break;
            case 2:
            case 3:
            case 12:
                System.out.println("莊家勝");
                money-=bet;
                break;
            default:
                needsGoOn = true;   
            }
            while (needsGoOn) {

                face1 = (int) (Math.random() * 6 + 1);
                face2 = (int) (Math.random() * 6 + 1);

                int currentPoint = face1 + face2;
                System.out.println("玩家搖出了" + currentPoint + "點(diǎn)");
                if (currentPoint == 7) {
                    System.out.println("莊家勝");
                    money-=bet;
                    needsGoOn = false;
                } else if (currentPoint == firsstPoint) {
                    System.out.println("玩家勝");
                    money+=bet;
                    needsGoOn = false;
                } 
            } 
            
        } while (money>0);
        System.out.println("你已經(jīng)破產(chǎn)");
        input.close();
        
    }

2.輸入年月日悬包,輸出這是這一年的第幾天

  • 如果程序中出現(xiàn)了重復(fù)的或者相對(duì)獨(dú)立的功能衙猪,那么應(yīng)該將這些功能單獨(dú)寫(xiě)到一個(gè)方法中
package comDay12_02_2;
import java.util.Scanner;
public class Text3 {
    // year作為因變量時(shí),此方法需要返回一個(gè)判斷是否為閏年的結(jié)果(是or不是)布近,屬于布爾類型垫释;
                public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.println("請(qǐng)輸入年  月   日");
        int year = input.nextInt();
        int month = input.nextInt();
        int day = input.nextInt();
        int sum = 0;
        for (int i = 1; i < month; i++) {

            sum += daysOfMonth(year, i);
        }
        System.out.printf("有%d天", (sum + day));
        input.close();
    }
//isLeapYear方法判斷輸入的年份是否屬于閏年
    public static boolean isLeapYear(int year) {

        return year % 4 == 0 && year % 100 != 0 || year % 400 == 0;

    }
//daysOfMonth用于判斷當(dāng)前月份的天數(shù)
    public static int daysOfMonth(int year, int month) {

        if (month == 4 || month == 6 || month == 9 || month == 11) {

            return 30;
        } else if (month == 2) {
            if (isLeapYear(year)) {
                return 29;
            } else {
                return 28;
            }

        } else {
            return 31;
        }
    }
}

}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市撑瞧,隨后出現(xiàn)的幾起案子棵譬,更是在濱河造成了極大的恐慌,老刑警劉巖季蚂,帶你破解...
    沈念sama閱讀 206,723評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異琅束,居然都是意外死亡扭屁,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,485評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門涩禀,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)料滥,“玉大人,你說(shuō)我怎么就攤上這事艾船】梗” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 152,998評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵屿岂,是天一觀的道長(zhǎng)践宴。 經(jīng)常有香客問(wèn)我阻肩,道長(zhǎng),這世上最難降的妖魔是什么烤惊? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,323評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮柒室,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘空骚。我一直安慰自己不脯,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,355評(píng)論 5 374
  • 文/花漫 我一把揭開(kāi)白布牺丙。 她就那樣靜靜地躺著冲簿,像睡著了一般亿昏。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上吝沫,一...
    開(kāi)封第一講書(shū)人閱讀 49,079評(píng)論 1 285
  • 那天惨险,我揣著相機(jī)與錄音脊髓,去河邊找鬼。 笑死将硝,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的痰腮。 我是一名探鬼主播律罢,決...
    沈念sama閱讀 38,389評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼骄酗!你這毒婦竟也來(lái)了悦冀?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 37,019評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤踏烙,失蹤者是張志新(化名)和其女友劉穎历等,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體荐捻,經(jīng)...
    沈念sama閱讀 43,519評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡处面,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,971評(píng)論 2 325
  • 正文 我和宋清朗相戀三年魂角,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了智绸。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,100評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡斯稳,死狀恐怖沼溜,靈堂內(nèi)的尸體忽然破棺而出游添,到底是詐尸還是另有隱情,我是刑警寧澤唆涝,帶...
    沈念sama閱讀 33,738評(píng)論 4 324
  • 正文 年R本政府宣布廊酣,位于F島的核電站,受9級(jí)特大地震影響晓猛,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜戒职,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,293評(píng)論 3 307
  • 文/蒙蒙 一洪燥、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧市咆,春花似錦、人聲如沸蒙兰。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,289評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)痹雅。三九已至糊识,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間愉耙,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,517評(píng)論 1 262
  • 我被黑心中介騙來(lái)泰國(guó)打工朴沿, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留赌渣,地道東北人昌犹。 一個(gè)月前我還...
    沈念sama閱讀 45,547評(píng)論 2 354
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像鸿竖,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子缚忧,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,834評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容