비교 연산자 실습

    문제 변수 abint형 변수입니다. 각각 어떤 값을 가졌는지 비교하기 전에는 모릅니다. ab가 주어졌다고 가정하고 문제를 풀어보세요.

    public class OperatorExam2 {
        public void calculate(int a, int b) {
        
            // a가 b보다 큰지 비교한 결과(true 또는 false)를 c에 저장하세요.
            _____________________
            
            // a와 b가 같은지 비교한 결과를 d에 저장하세요.
            _____________________
            
            // a와 b가 다른지 비교한 결과를 e에 저장하세요.
            _____________________
            
            System.out.println(a+"은(는) "+b+"보다 큽니까? "+ c);
            System.out.println(a+"은(는) "+b+"와(과) 같습니까? "+ d);
            System.out.println(a+"은(는) "+b+"와(과) 다릅니까? "+ e);
    }
        public static void main(String[]args) {
            // 0~10 사이 값을 랜덤하게 변수 a와 b에 넣어줍니다. 
            int a = (int)(Math.random()*10);
            int b = (int)(Math.random()*10);
            new OperatorExam2().calculate(a,b);
        }
    }

     

    실행결과

    // 변수 a와 b의 값이 실행할 때마다 달라지므로 실행결과는 다를 수 있습니다.
    8은(는) 3보다 큽니까? true
    8은(는) 3와(과) 같습니까? false
    8은(는) 3와(과) 다릅니까? true

     

    정답

    boolean c = a > b;
    boolean d = a = = b;
    boolean e = a != b;

     

    해설

    비교 연산자 실습입니다. 비교 연산자는 두 값을 비교해서 결괏값을 true 또는 false로 알려 주는 연산자입니다. 실행결과에서 ab 값에 따른 결과가 맞게 나왔는지 비교해보세요.

    int a = (int)(Math.random()*10);

     

    Math.random()0.0 이상에서 1.0 미만의 랜덤한 double형의 실숫값을 반환합니다.

     

    Math.random()*100.0에서 10.0 미만의 랜덤한 값을 반환합니다.

     

    위의 실습과 별개로 main 메서드에서,

    System.out.println(Math.random());
    System.out.println(Math.random()*10); 
    System.out.println((int)Math.random()*10);

     

    이 코드들을 실행하면서 값을 확인해보세요.

     

    (int)(Math.random()*10) 이렇게 (int) int형으로 형변환을 하면 소수점 뒤의 값은 없어지겠죠. 즉, 0~9 사이의 값을 변수 a와 변수 b에 담아주겠다는 의미입니다. 그러므로 변수 ab는 실행할 때마다 다른 값을 가질 수 있습니다.

    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.