๐โ 1~10 ์ฌ์ด์ ์ ์ ํ ๊ฐ๋ฅผ ์ ๋ ฅ๋ฐ์ ํ์์ธ์ง ์ง์์ธ์ง ํ์ธํ๊ณ ,
ํ์์ด๋ฉด "ํ์๋ค.", ํ์๊ฐ ์๋๋ฉด "์ง์๋ค."๋ผ๊ณ ์ถ๋ ฅํ์ธ์.
๋จ, 1~10 ์ฌ์ด์ ์ ์๊ฐ ์๋ ๊ฒฝ์ฐ "๋ฐ๋์ 1 ~ 10 ์ฌ์ด์ ์ ์๋ฅผ ์ ๋ ฅํด์ผ ํฉ๋๋ค."๋ฅผ ์ถ๋ ฅํ์ธ์.
import java.util.Scanner;
public class Application1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("1๊ณผ 10 ์ฌ์ด์ ์ ์๋ฅผ ํ๋ ์
๋ ฅํ์ธ์ : ");
int num = sc.nextInt();
if(num > 0 && num < 11) {
if(num % 2 == 1) {
System.out.println("ํ์๋ค");
} else {
System.out.println("์ง์๋ค");
}
} else {
System.out.println("๋ฐ๋์ 1 ~ 10 ์ฌ์ด์ ์ ์๋ฅผ ์
๋ ฅํด์ผ ํฉ๋๋ค.");
}
}
}
๐โ BMI(์ ์ฒด์ง๋์ง์)๋ฅผ ๊ณ์ฐํ๊ณ , ๊ณ์ฐ๋ ๊ฐ์ ๋ฐ๋ผ
์ ์ฒด์ค(20 ๋ฏธ๋ง)์ธ ๊ฒฝ์ฐ, "๋น์ ์ ์ ์ฒด์ค ์ ๋๋ค."
์ ์์ฒด์ค(20์ด์ 25๋ฏธ๋ง)์ธ ๊ฒฝ์ฐ, "๋น์ ์ ์ ์์ฒด์ค ์ ๋๋ค."
๊ณผ์ฒด์ค(25์ด์ 30๋ฏธ๋ง)์ธ ๊ฒฝ์ฐ, "๋น์ ์ ๊ณผ์ฒด์ค ์ ๋๋ค."
๋น๋ง(30์ด์)์ธ ๊ฒฝ์ฐ, "๋น์ ์ ๋น๋ง ์ ๋๋ค."๋ฅผ ์ถ๋ ฅํ์ธ์.
BMI = ์ฒด์ค / ํค * ํค
import java.util.Scanner;
public class Application2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("๋น์ ์ ์ฒด์ค(kg)์ ์
๋ ฅํด์ฃผ์ธ์ : ");
int kg = sc.nextInt();
System.out.println("๋น์ ์ ํค(m)๋ฅผ ์
๋ ฅํด์ฃผ์ธ์ : ");
double cm = sc.nextDouble();
double bmi = kg / (cm * cm);
if(bmi < 20) {
System.out.println("๋น์ ์ ์ ์ฒด์ค ์
๋๋ค.");
} else if(bmi < 25) {
System.out.println("๋น์ ์ ์ ์์ฒด์ค ์
๋๋ค.");
} else if(bmi < 30) {
System.out.println("๋น์ ์ ๊ณผ์ฒด์ค ์
๋๋ค.");
} else if(bmi >= 30) {
System.out.println("๋น์ ์ ๋น๋ง ์
๋๋ค.");
}
}
}
๐โ ๋ ๊ฐ์ ์ ์๋ฅผ ์ ๋ ฅ ๋ฐ์ ๋ณ์์ ์ ์ฅํ๊ณ ,
์ฐ์ฐ๊ธฐํธ(+, -, *, /, %)๋ฅผ ์ ๋ ฅ ๋ฐ์ ํด๋น ์ฐ์ฐ์ ์ํ ๊ฒฐ๊ณผ๋ฅผ ์ถ๋ ฅํ์ธ์.
๋จ, ์ค๋น๋ ์ฐ์ฐ๊ธฐํธ ์ธ์ ๋ฌธ์๋ฅผ ์ ๋ ฅํ๋ ๊ฒฝ์ฐ "์ ๋ ฅํ์ ์ฐ์ฐ์ ์์ต๋๋ค. ํ๋ก๊ทธ๋จ์ ์ข ๋ฃํฉ๋๋ค."๋ฅผ ์ถ๋ ฅํ์ธ์.
import java.util.Scanner;
public class Application1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("์ฒซ ๋ฒ์งธ ์ ์ : ");
int num1 = sc.nextInt();
System.out.println("๋ ๋ฒ์งธ ์ ์ : ");
int num2 = sc.nextInt();
System.out.println("์ฐ์ฐ ๊ธฐํธ๋ฅผ ์
๋ ฅํ์ธ์ : ");
char point = sc.next().charAt(0);
int result = 0;
switch(point) {
case '+' : result = num1 + num2;
break;
case '-' : result = num1 - num2;
break;
case '*' : result = num1 * num2;
break;
case '/' : result = num1 / num2;
break;
case '%' : result = num1 % num2;
break;
default : System.out.println("์
๋ ฅํ์ ์ฐ์ฐ์ ์์ต๋๋ค.ํ๋ก๊ทธ๋จ์ ์ข
๋ฃํฉ๋๋ค.");
return;
}
System.out.println(num1 + " " + point + " " + num2 + " = " + result);
}
}
๐ Ref.
* return์ ๋ค์ ๋ง๋ถ์ฌ์ฃผ๋ฉด ์๋ฑ๋ง์ ์ฐ์ฐ๊ธฐํธ๋ฅผ ์
๋ ฅํด์ "ํ๋ก๊ทธ๋จ์ ์ข
๋ฃํฉ๋๋ค"๋ผ๋ ๋ฌธ๊ตฌ๊ฐ ๋ ๋
์๋์ println()์์ด ํจ๊ป ์ถ๋ ฅ๋์ง์์ (๋ฉ์๋๋ฅผ return์ผ๋ก ๊ฐ์ ์ข
๋ฃํ๊ธฐ ๋๋ฌธ)
๐ฌ Overall Comment
* ์ฒ์์ return์ ๋ฃ์ง์์ ์ฐ์ฐ๊ธฐํธ ๋์ ?๋ฅผ ๋ฃ์ผ๋ฉด 1 ? 2 = 0 ์ด๋ผ๋ ์์ด ํ๋ก๊ทธ๋จ ์ข
๋ฃ๋ฅผ ์๋ฆฌ๋
์ถ๋ ฅ๋ฌธ๊ณผ ํจ๊ป ์ถ๋ ฅ๋์๋ค. ๋ฐ๋ผ์, ๋์ด์์ ์ฝ๋ ์งํ์ด ์์ด์ผ ํ๋ฏ๋ก ๋ฉ์๋๋ฅผ ๊ฐ์ ์ข
๋ฃ์ํค๋
return์ด ์
๋ ฅ๋์ด์ผํ๋ค๋ ๊ฒ์ ๋ฐฐ์ ๋ค.
๐โ ๊ณผ์ผ ์ด๋ฆ("์ฌ๊ณผ", "๋ฐ๋๋", "๋ณต์ญ์", "ํค์") ์ค ํ ๊ฐ์ง๋ฅผ ๋ฌธ์์ด๋ก ์ ๋ ฅํ๋ฉด ํด๋นํ๋ ๊ฐ๊ฒฉ์ ๋ง๊ฒ ์ํ๋ช ๊ณผ ๊ฐ๊ฒฉ์ด ์ถ๋ ฅ๋๊ฒ ํ์ธ์.
๋จ, ๋ชฉ๋ก์ ์๋ ๊ณผ์ผ์ ์ ๋ ฅ ์ "์ค๋น๋ ์ํ์ด ์์ต๋๋ค." ์ถ๋ ฅ ํ ํ๋ก๊ทธ๋จ ์ข ๋ฃ.
import java.util.Scanner;
public class Application2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("๊ณผ์ผ ์ด๋ฆ์ ์
๋ ฅํ์ธ์ : ");
String fruit = sc.nextLine();
int price = 0;
switch(fruit){
case "์ฌ๊ณผ" : price = 1000;
break;
case "๋ฐ๋๋" : price = 3000;
break;
case "๋ณต์ญ์" : price = 2000;
break;
case "ํค์" : price = 5000;
break;
default : System.out.println("์ค๋น๋ ์ํ์ด ์์ต๋๋ค.");
return;
}
System.out.println(fruit + "์ ๊ฐ๊ฒฉ์ " + price + "์ ์
๋๋ค.");
}
}
๐ฌ Overall Comment
* ์ ๋ฌธํญ๊ณผ ๋์ผํ๊ฒ case์ ์๋ ๊ฐ์ด ์
๋ ฅ๋์์ ๊ฒฝ์ฐ, switch๋ฌธ ๋ฐ์ ๋ฌธ์ฅ์ ์ํํ์ง์๊ณ ๊ฐ์ ์ข
๋ฃํ๊ธฐ ์ํด์๋
return์ด ๋ฐ๋์ ์
๋ ฅ๋์ด์ผํ๋ค๋ ๊ฒ์ ๋ฐฐ์ ๋ค.
๐โ ๊ตญ์ด, ์์ด, ์ํ ์ ์๋ฅผ ์ ๋ ฅ๋ฐ์ ํ๊ท ์ ์๊ฐ 60์ ์ด์์ด๋ฉด์ ๊ฐ ๊ณผ๋ชฉ์ด 40์ ์ด์์ธ ์กฐ๊ฑด์ด ๋ง์กฑํ๋ฉด "ํฉ๊ฒฉ์ ๋๋ค!"๋ฅผ ์ถ๋ ฅํ์ธ์.
๋จ, ํฉ๊ฒฉ์ด ์๋ ๊ฒฝ์ฐ ๋ถํฉ๊ฒฉ ์ฌ์ ๊ฐ ๋ฌด์์ธ์ง๋ฅผ ๋ชจ๋ ์ถ๋ ฅํด์ฃผ์ด์ผ ํฉ๋๋ค.
ํ๊ท ์ ์ ๋ฏธ๋ฌ์ธ ๊ฒฝ์ฐ "ํ๊ท ์ ์ ๋ฏธ๋ฌ๋ก ๋ถํฉ๊ฒฉ์ ๋๋ค."๋ผ๊ณ ์ถ๋ ฅํ๊ณ ,
๊ณผ๋ชฉ๋น ๊ณผ๋ฝ ์ ์๊ฐ ์๋ ๊ฒฝ์ฐ "xx ๊ณผ๋ชฉ์ ์ ์ ๋ฏธ๋ฌ๋ก ๋ถํฉ๊ฒฉ ์ ๋๋ค." ์ถ๋ ฅํ์ธ์.
package com.greedy.section01.conditional.level04.advanced;
import java.util.Scanner;
public class Application1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("๊ตญ์ด ์ ์๋ฅผ ์
๋ ฅํ์ธ์ : ");
int kor = sc.nextInt();
System.out.println("์์ด ์ ์๋ฅผ ์
๋ ฅํ์ธ์ : ");
int eng = sc.nextInt();
System.out.println("์ํ ์ ์๋ฅผ ์
๋ ฅํ์ธ์ : ");
int math = sc.nextInt();
int avrg = (kor + eng + math)/3;
if (avrg >= 60 && kor >= 40 && eng >= 40 && math >= 40 ) {
System.out.println("ํฉ๊ฒฉ์
๋๋ค!");
} else if (avrg < 60) {
System.out.println("ํ๊ท ์ ์ ๋ฏธ๋ฌ๋ก ๋ถํฉ๊ฒฉ์
๋๋ค.");
if (kor < 40) {
System.out.println("๊ตญ์ด ์ ์ ๋ฏธ๋ฌ๋ก ๋ถํฉ๊ฒฉ์
๋๋ค.");
} if (eng < 40) {
System.out.println("์์ด ์ ์ ๋ฏธ๋ฌ๋ก ๋ถํฉ๊ฒฉ์
๋๋ค.");
} if (math < 40) {
System.out.println("์ํ ์ ์ ๋ฏธ๋ฌ๋ก ๋ถํฉ๊ฒฉ์
๋๋ค.");
}
} else if (kor < 40) {
System.out.println("๊ตญ์ด ์ ์ ๋ฏธ๋ฌ๋ก ๋ถํฉ๊ฒฉ์
๋๋ค");
} else if (eng < 40) {
System.out.println("์์ด ์ ์ ๋ฏธ๋ฌ๋ก ๋ถํฉ๊ฒฉ์
๋๋ค");
} else if (math < 40) {
System.out.println("์ํ ์ ์ ๋ฏธ๋ฌ๋ก ๋ถํฉ๊ฒฉ์
๋๋ค");
}
}
}
๐ฌ Overall Comment
* ๋ฌธํญ ์๊ฑด ์ค ํฉ๊ฒฉ์ด ์๋ ๊ฒฝ์ฐ, ๋ถํฉ๊ฒฉ ์ฌ์ ๊ฐ ๋ฌด์์ธ์ง๋ฅผ '๋ชจ๋' ์ถ๋ ฅํด์ฃผ์ด์ผํ๋ค๋ ๋ถ๋ถ์ด ๋์ ์๋ค.
๊ณ ๋ฏผ์ ํ๋ค๊ฐ 'ํ๊ท ์ ์ ๋ฏธ๋ฌ๋ก ๋ถํฉ๊ฒฉ์
๋๋ค'๊ฐ ์ถ๋ ฅ๋๋ ๊ฒฝ์ฐ์ ๊ฐ ๊ณผ๋ชฉ์ ์ ์๊ฐ ๋ฏธ๋ฌ์ธ์ง๋ ํ์ธ์
ํด์ผํ๋ค๊ณ ์๊ฐํ๊ธฐ ๋๋ฌธ์ else if๋ฌธ์ ๊ฐ๊ฐ if๋ฅผ ๋ถ์ฌ ๋ชจ๋ ๋ถํฉ๊ฒฉ ์ฌ์ ๊ฐ ๋์ค๋๋ก ์ฝ๋๋ฅผ ๊ตฌ์ฑํ๋ค.
๐โ ์์ ์ฌ์์ ์๊ธ์ ๊ณ์ฐํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ๋ ค๊ณ ํฉ๋๋ค.
์ ๊ธ์ฌ์ก๊ณผ ์ ๋งค์ถ์ก์ ์ ๋ ฅ๋ฐ์ ๊ธ์ฌ๋ฅผ ์ฐ์ ํฉ๋๋ค.
์์ ์ฌ์์ ๋งค์ถ์ก ๋๋น ๋ณด๋์ค์จ์ ๋ช ์๋ ๋ณด๋์ค๋ฅผ ๊ธ์ฌ ์ธ์ ์ถ๊ฐ๋ก ์ง๊ธ๋ฐ์ต๋๋ค.
๋จ, ๋ณด๋์ค์จ์ ์ ๋ ฅ ๋ฐ์ ์ ๋งค์ถ์ก์ ๋น๋กํ๋ฉฐ, ๊ณ์ฐ๋ ๋ณด๋์ค ๊ธ์ก์ ์ ๊ธ์ฌ์ก์ ๋ํ์ฌ ์ด ๊ธ์ฌ๋ฅผ ๊ณ์ฐํฉ๋๋ค.
๋ณด๋์ค์จ์ ์ ์ฉํ์ฌ ์ถ๋ ฅ ์์์ฒ๋ผ ์ถ๋ ฅ๋๋๋ก ํ๋ก๊ทธ๋จ์ ๋ง๋ค์ด๋ณด์ธ์.
์ด ๊ธ์ฌ = ์ ๊ธ์ฌ + (๋งค์ถ์ก * ๋ณด๋์ค์จ)
-- ๋งค์ถ์ก ๋๋น ๋ณด๋์ค์จ -- ๋งค์ถ์ก ๋ณด๋์ค์จ 5์ฒ๋ง์ ์ด์ 5% 3์ฒ๋ง์ ์ด์ 3% 1์ฒ๋ง์ ์ด์ 1% 1์ฒ๋ง์ ๋ฏธ๋ง 0%
๐ฉ Example Output
======================
๋งค์ถ์ก : 20000000
๋ณด๋์ค์จ : 1%
์ ๊ธ์ฌ : 3000000
๋ณด๋์ค ๊ธ์ก : 200000
======================
์ด ๊ธ์ฌ : 3200000
import java.util.Scanner;
public class Application2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("์ ๊ธ์ฌ ์
๋ ฅ : ");
int wage = sc.nextInt();
System.out.println("๋งค์ถ์ก ์
๋ ฅ : ");
int sales = sc.nextInt();
double bonusPer = 0;
if(sales >= 50000000) {
bonusPer = 0.05;
} else if(sales >= 30000000) {
bonusPer = 0.03;
} else if(sales >= 10000000) {
bonusPer = 0.01;
} else
bonusPer = 0.0;
double totalWage = (wage + sales * bonusPer);
System.out.println("=================================");
System.out.println("๋งค์ถ์ก : " + sales);
System.out.println("๋ณด๋์ค์จ : " + (int)(bonusPer * 100) + "%");
System.out.println("์ ๊ธ์ฌ : " + wage);
System.out.println("๋ณด๋์ค ๊ธ์ก : " + (int)(sales * bonusPer));
System.out.println("=================================");
System.out.println("์ด ๊ธ์ฌ : " + (int)totalWage);
}
}
๐ฌ Overall Comment
* if-else๋ฌธ์ ๊ตฌ์ฑํ๋ ๋ถ๋ถ์ ์์กฐ๋ก์ ์ผ๋, bonusPer๊ฐ double๊ฐ์ธ ์ ์์ ๊ฒฐ๊ณผ๋ฅผ int๊ฐ์ผ๋ก ๋ฝ๊ธฐ ์ํด
๊ฐ์ ํ๋ณํ์ ์ฌ์ฉํ๋ ํํธ์์ ๊ณ์ ๋ค์์ผฐ์๋ค. ์ต๋ํ ๊ฐ๊ฒฐํ ์ฝ๋๋ฅผ ๊ตฌ์ฑํ๊ณ ์ถ์์ผ๋ ๊ฐ์ ํ๋ณํ์ผ๋ก
์ธํ ์ค๋ฅ๋ฅผ ํด๊ฒฐํ๋๋ผ 100% ๋ง์ ๋ค๋๋ก ์์ฑํ์ง ๋ชป ํ๋ค. ํ์ง๋ง ์ฌ๋ฌ๊ฐ์ง ์๋ก์ด ์์ด๋์ด๋ฅผ ์ป์ ์ ์๊ฒ
ํด์ค ๋ฌธํญ์ด์๋ค.
๐ Used Keywords
if
else
switch
return
๊ฐ์ ํ๋ณํ