Notice
Recent Posts
Recent Comments
Link
«   2025/12   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
Archives
Today
Total
관리 메뉴

햄코딩

DAY 5 본문

Java

DAY 5

햄코딩 2022. 4. 20. 18:39

220420 노션 정리 완료 - 모두 꼼꼼히 정리.

220420 블로그 정리 진행 중 - 중요한 것 위주로 발췌 정리. //하이로우, 계산기 정리해야 함

Ch03Ex17 - if문, if ~ else문, if ~ else if ~ else문 개념정리


Ch03Ex20 - if, if ~ else, if ~ else if ~ else, else if 무한 추가

Ch03Ex22 - if 문, 번외 : if 무한대 중첩

  • 번외 : if는 무한대로 중첩 (if 내부에 if) 가능

💡 Q. 20번이 직관적인데 왜 22번처럼 중첩이라는 기능을 쓰는 걸까?
A. 실행 횟수 줄이려고
→예를 들어 0을 입력했다면, 20번은 0이 아니라면 5번 동안 0이 아님을 수행함. 22번은 1에서 4 사이가 아니라고 바로 26번 줄로 넘어감.

Ch03Ex21 - if 문~, Scanner 추가

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
package ch03;
 
import java.util.Scanner;
 
public class Ch03Ex21 {
 
    public static void main(String[] args) {
 
        Scanner scan = new Scanner(System.in); //입력버퍼를 스캔해왔다.
        //놀이동산//0 : 없음, 1 : 종일권, 2 : 오전권, 3 : 오후권, 4 : 야간권.
        System.out.println("0 : 없음, 1 : 종일권, 2 : 오전권, 3 : 오후권, 4 : 야간권");
        System.out.print("메뉴를 선택하세요 : ");
            
        int ticket = scan.nextInt();
        
        if(ticket == 1) { //티켓이 있다면 환영해라. 
            System.out.println("놀이 동산에 오신 것을 환영합니다.");
        } else if(ticket == 2) {
            System.out.println("오후 3시에 퇴장을 안내한다.");
        } else if(ticket == 3) {
            System.out.println("오후 3시부터 입장을 안내한다.");
        } else if(ticket == 4) {
            System.out.println("오후 6시부터 입장을 안내한다.");
        } else {
            System.out.println("매표소를 안내한다.");
        }         //1~4 외의 값을 입력하면 "매표소를 안내한다"가 뜬다.
   
        scan.close(); //반드시 닫아야 한다.
            
    }//main
 
}//class
 
cs

Ch03Ex24 - 가위바위보 게임(Scanner, random, if문) (축약)

  • 예제23 - module 3의 if문에서 공통된 부분인 “비김” 부분을 축약.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
package ch03;
import java.util.Scanner;
public class Ch03Ex24 {
    public static void main(String[] args) {
        //module 1
        Scanner scan = new Scanner(System.in);
        System.out.print("1:가위, 2:바위, 3:보, 당신의 선택은? : "); 
        int yourSelect = scan.nextInt();. 
        System.out.println("Your Select : " + yourSelect);
        scan.close();
        
        //module 2
        int comSelect = (int) (Math.random() * 3 + 1); 
        System.out.println("Computer Select : " + comSelect);
        
        //module 3 
                if(yourSelect == comSelect) {
                    System.out.println("비김");
                } else if(yourSelect == 1) {
                    if (comSelect == 2) {
                        System.out.println("패배");
                    } else if (comSelect == 3) {
                        System.out.println("승리");
                    }
                } else if (yourSelect == 2) {
                    if(comSelect == 1) {
                        System.out.println("승리");
                    } else if (comSelect == 3) {
                        System.out.println("패배");
                    }
                } else if (yourSelect == 3) {
                    if(comSelect == 1) {
                        System.out.println("패배");
                    } else if (comSelect == 2) {
                        System.out.println("승리");
                    }
                } else {
                    System.out.println("입력 값이 올바르지 않습니다.");
                }
            }//main
        }//class
cs
  • 확인해보기 : int comSelect = (int) (Math.random() * 3 + 1);  //1,2,3표시위해 * 3 +1 //소수점 필요없어서 잘라내야하니까 int변환

 

Ch03Ex25 - 하이 로우 게임 (2) - Ch03Ex16 참조.

 

Ch03Ex26 - 국영수 점수 입력 받고 평균 내기

Q. 국어 영어 수학 (합계, 평균) 점수를 입력 받는다. 평균을 구하여, 90이상은 A, 80이상은 B, 70이상은 C, 60이상은 D, 나머지는 F.

A. 순서
1. 국 영 수 점수를 입력 받는다. - Scanner
2. 합계와 평균을 구한다.
3. 등급 평가
1) if 문으로 작성한 경우, avg = 99; 라면, 아래 4개의 각각 독립된if문을 모두 수행해버린다.
2) if ~ else 문으로 작성한 경우, 경우의 수 중에 하나라도 해당되면, 해당 조건만 수행하고, 나머지는 무시한다. → 실행 횟수 감소 효과

Ch03Ex27 ~ Ch03Ex30 - switch ~ case


Ch03Ex31 - 계산기 - switch ~ case로.

 

Ch03Ex32 - 계산기 - if문으로.

'Java' 카테고리의 다른 글

DAY 7  (0) 2022.04.22
DAY 6  (0) 2022.04.21
DAY 4  (0) 2022.04.19
DAY 3  (0) 2022.04.18
DAY 2  (0) 2022.04.15