조건이 참일 때만 해당 문장을 실행해요
함수·정수 계산을 익힌 뒤 읽어요. if (조건)의 조건이 참이면 { } 안을 실행하고, 거짓이면 else 안을 실행해요.
int bonus(int count) {
if (count >= 5) {
return 2;
} else {
return 0;
}
}
>=는 크거나 같다, >는 크다, ==는 같다예요. bonus(7)은 2이고 bonus(3)은 0이에요.
기준값을 표에 넣어 확인해요
아래는 방금 본 bonus의 기준 주변이에요.
| count | count >= 5 | 반환값 |
|---|---|---|
| 4 | 거짓 | 0 |
| 5 | 참 | 2 |
| 6 | 참 | 2 |
bonus(5)의 반환값을 0으로 예상했다면 무엇을 놓쳤을까요? ‘5 이상’에는 5도 포함돼요. 자연어의 ‘이상’과 ‘초과’를 먼저 비교식으로 옮기면 기준값에서 달라지는 동작이 보여요. return을 실행한 함수는 거기서 끝나고 아래 문장을 더 실행하지 않아요.
직접 풀어봐요
구매 금액 amount가 무료 기준 limit 이상이면 보관료는 0원이고, 그렇지 않으면 5원이에요. solution(amount, limit)이 보관료를 반환하도록 제공 코드의 잘못된 한 줄을 수정해요.
amount는 01000, limit은 11000이에요. 실행용 입력은 amount limit, 출력은 반환값이에요. main은 실행용이므로 바꾸지 않아요.
예시 1: (12, 10) → 0. 기준 이상이에요.
예시 2: (4, 10) → 5. 기준에 못 미쳐요.
예시 입력
12 10
예상 결과
0
예시 입력
4 10
예상 결과
5
핵심 개념
conditionals:>=는 이상,>는 초과예요. 같은 기준값이라도 포함 여부에 따라 조건이 달라져요.