[Info]Tags categorized posts and contents patterns..

[AJAX] Ajax Code E xamples.. [Book] About the book.. [CSS] CSS Code E xamples.. [DB] Sql Code E xamples.. [DEV] All development stor...

2016년 8월 25일 목요일

[JAVA] Baekjoon 세 정수 A, B, C중에 두 번째로 큰 정수 찾아보기..

이제는 if 조건이 3가지로 늘어났다.. 머 그렇다고 상황이 크게 바뀌는 것은 없다.. 만약 문제가 for 를 기초로 한다면 이런말을 못했을 나지만.. ㅋㅋㅋ.. if 라 조금 배짱을 부려본다.. ㅎㅎ

문제
세 정수 A, B, C가 주어진다. 이 때, 두 번째로 큰 정수를 출력하는 프로그램을 작성하시오. 

입력
첫째 줄에 세 정수 A, B, C가 공백으로 구분되어 주어진다. (1 ≤ A, B, C ≤ 100)

출력
두 번째로 큰 정수를 출력한다.

 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
42
43
package step4;

import java.util.Scanner;

public class PrintIfInteger {

    @SuppressWarnings("resource")
    public static void main(String[] args) {
  
        Scanner scan = new Scanner(System.in);
        
        //int intValA = 20;
        //int intValB = 10;
        //int intValC = 10;

        int intValA = scan.nextInt();
        int intValB = scan.nextInt();
        int intValC = scan.nextInt();
        
        //명확히 구분 될 때
        if(((intValA > intValB && intValA < intValC) || (intValA > intValC && intValA < intValB)) && (intValB != intValC)) {
            System.out.println(intValA);
         
        } else if(((intValB > intValA && intValB < intValC) || (intValB > intValC && intValB < intValA)) && (intValA != intValC)) {
            System.out.println(intValB);
         
        } else if(((intValC > intValA && intValC < intValB) || (intValC > intValB && intValC < intValA)) && (intValA != intValB) ) {
            System.out.println(intValC);
         
        //두 수가 같을 때
        } else if((intValA == intValB) || (intValA == intValC)) {
            System.out.println(intValA);
         
        } else if((intValB == intValC)) {
            System.out.println(intValB);
         
        //세 수가 같을 때
        } else if((intValA == intValB) && (intValA == intValC) && (intValB == intValC)) {
            System.out.println(intValA);
        }
    }

}//



문제에 대한 답은 상당히 다양할 것이다.. 우선 나는 각 3개의 입력값을 설정한 상태에서 if 를 충실히 사용했다.. 각각에 대한 경우에 대한 비교를 한 패턴이기 때문에 소스가 어찌보면 지저분하다.. ㅎㅎ

하지만 모든 분들이 알듯이 소스에 대한 코딩에 대한 답은 없으므로 자신의 입맛에 맞게 혹은 자신이 실험하고픈 방향대로 해보면 좋을 듯 하다.. 세상에 모든 소스는 내가 발전하기 위한 참고용이지.. 정답은 아니니 말이다..

댓글 없음:

댓글 쓰기