此篇主要為在【 資策會 】上課時的【Java】 課程 筆記,針對基本架構【 if-else 】的【 練習題 】【考古題】。
【if-else】相關解說請閱讀【 Java基本架構(3):if-else 】,內有詳細說明。
練習題 一 (骰子)
目標:設定一個幸運數字、比對跟隨機骰出來的幸運數字是否相同,相同印「yes」,不同印「 no 」。
int luckynmber=5; // 設定幸運數字為5
int dicenumber= (int) (Math.random()*6+1); // 隨機產生骰子數
System.out.println(“dicenumber= “+dicenumber); //印出產生的 骰子數
if (dicenumber==luckynmber) //若號碼相等列印「 yes 」
{
System.out.println(“yes”);
}else{ // 若號碼 不等列印 「 no 」
System.out.println(“no”);
}
結果:
dicenumber= 3
no
*註:Math.random()會隨機產生0-0.9999999(無限接近1)的數字,所以需要乘以6+1,並且強制轉型成整數(int)。
0.0≦Math.random()<1.0
0.0≦Math.random()<6.0 //乘以6
1.0≦Math.random()<7.0 //加1
1 ≦Math.random()<7 //強行轉換(int)
練習題 二 (奇偶數)
目標:設定一個數字,判斷奇偶數。
int num=5;
if(num%2==0) // %符號可以算出餘數
{
System.out.println(num+” is even”);
}else
{
System.out.println(num+” is odd”);
}
結果:
5 is odd
練習題 三 (閏年)
目標:判斷是否為閏年
int year=2020;
if(year%4==0 && year%100!=0 || year%400==0)
{
System.out.println(“year:”+year+ ” is 閏年,has 29 days”);
}else {
System.out.println(“year:”+year+ ” isn’t 閏年,has 28 days”);
}
結果:
year:2020 is 閏年,has 29 days
練習題 四
目標:
如果N是奇數,輸出「Weird」。
如果N是偶數,且它的範圍在2到5之間(包括2和5),輸出「Not Weird」。
如果N是偶數,且它的範圍在6到20之間(包括6和20),輸出「Weird」。
如果N是偶數,且它大於20,輸出「Not Weird」。
int n = 4;
String ans;
if (n % 2 == 1 || n >= 6 && n <= 20) {
ans = “Weird”;
}else {
ans = “Not Weird”;
}
System.out.println(ans);
結果:
Not Weird