Day 04 - if 문

2021. 2. 18. 23:51JAVA 공부

if 문

이번에는 if 문에 대해 알아봅시다.

영어 if 는 이런 뜻을 가지고 있죠 만약 ~ 라면

JAVA나 C, C++ 에서도 똑같이 쓰입니다.

 

if ( true 또는 false 가 오는 조건문1 )

{

   만약 조건문1이 참(true)일 경우 실행

}

else

{

   만약 조건문1이 거짓(false)일 경우 실행

}

 

그러면 변수와 같이 사용할 때는 어떻게 쓰는지 확인 해 보겠습니다

※if 뒤에 중괄호 같은 경우는 사진과 같이 조건문 옆에 써도 되고 아래에 써도 됩니다. 편한대로 하세요

자 0 ~ 100 까지의 랜덤한 수를 int형 변수 point에 넣고,

if 문에서는 point 가 60보다 크거나 같은지 확인을 하고 있습니다.

만약 참(true)이라면 (point 가 60보다 크거나 같다면) "축하합니다" , "합격이에요" 를 출력하고

만약 거짓(false)이라면 (point 가 60보다 작다면) "불합격 입니다" 를 출력하고 있죠. 결과를 확인해 볼게요

이렇게 if ( 조건문 ) 에서 조건문이 참(true) 일 경우와 거짓(false) 일 경우 실행되는 곳이 다르다는 걸 확인했습니다.

 

그러면 , if 문 안에서 또 if 문을 쓰는게 가능할까요? 네 가능합니다

이번에는 point 가 60보다 큰 경우 (true) / point가 60 이하 일 경우 (false) 로 나뉘어 지고 있는데

else - point가 60 이하 일 경우(false) 에서 또 if ( point == 60 ) 이 들어가서 point가 60이랑 같은 경우와 아닐 경우else를 두고 있죠.

그러면 point 가 60보다 크면 "축하합니다" "합격이에요" 를 출력하고, point 가 60 이하일 경우 중에서 point 가 60과 같으면 "축하합니다 턱걸이에요 !~" 를 출력하고, point 가 60 이하일 경우 중에서 point가 60보다 작은면 "불합격 입니다" 를 출력합니다.

이렇게 if else 문을 중첩 시키는게 가능합니다. - 무한정 중첩 시키는게 가능하지만, 그럴 경우 가독성이 떨어집니다

그러면 결국 조건이 3개라는 뜻인데, else 중괄호{}에서 if를 쓰지말고 위로 올리는 형태도 있습니다.

이렇게

if ( 조건문1 ) {

    조건문1이 참일 경우 수행

}
else if ( 조건문2 ) {

    조건문2가 참일 경우 수행

}

else {

    조건문 1과 조건문2가 전부(and) 거짓일 경우 수행

}

의 형태를 띕니다. 여기서 else if ( 조건문 ) 은 원하는대로 무한정 넣을 수 있습니다.

여기서, if 안에 있는 조건문이 참인지 아닌지 컴퓨터가 판단을 하는데 참이라면 조건문1을 수행하고, 조건문2를 판단하지 않고 바로 if문을 벗어납니다. 즉 위에서부터 아래로 조건문이 맞는지 검사하고 참이라면 그 다음 중괄호{} 를 수행하고 더이상 조건문을 검사하지 않습니다.

 

자. 그러면 if 문을 응용해서 간단한 문제를 풀어보죠

- 정수 2개를 입력받아서 어떤 값이 큰수인지 출력, 만약 같은수라면 "같은 수 입니다" 를 출력

 

먼저 값을 입력받아야 하니까 Scanner scan = new Scanner(System.in); 을 써줍니다

그리고 2개의 정수값을 입력받아야 하죠. int num1 , num2;

2개의 정수값을 입력받아 줍시다. num1 = scan.nextInt();       /     num2 = scan.nextInt();

이제 조건을 검사해줘야 합니다.

입력받은 num1 보다 입력받은 num2 가 큰가? if ( num1 > num2 )

입력받은 num1 과 입력받은 num2 가 같은가?    else if ( num1 == num2 )

그것도 아니라면 (입력받은 num1 보다 입력받은 num2 가 큰가?) else

이렇게 풀어 볼 수 있었습니다.

 

이번에는 if문 에 대해 알아 봤습니다 ~

 

고생하셨습니다.

 

다음은 switch (스위치문) 에 대해 알아 봅시다

'JAVA 공부' 카테고리의 다른 글

Day05 - 반목문 While  (3) 2021.02.19
Day04 - Switch (스위치문)  (0) 2021.02.19
Day 04 - 입력 Scanner  (0) 2021.02.18
Day04 - 배열(Array)  (0) 2021.02.18
Day03 - 2항 연산자 정의 및 종류 / 3항 연산자  (0) 2021.02.17