| English | 의미 |
|---|---|
| if statement/ɪf ˈsteɪtmənt/ | 조건문 |
조건부 코드 실행
- if 문장은 조건이
true일 때만 블록을 행합니다. if (score >= 60) { System.out.println("Pass"); }- 조건이
false가 아니면 블록은 완전히 건너뜁니다. - 이것은 선택입니다 — 프로그램이 블록을 실행할지 결정합니다.
else 추가하기
else절은 조건이false일 때 대체 코드를 실행합니다.if (score >= 60) { print("Pass"); } else { print("Fail"); }- 두 가지 분기 중 정확히 하나만 실행됩니다 — 둘 다 혹은 아무것도 아닙니다.
else는 선택 사항입니다; 순수한if은 조건이 거짓일 때 자신의 블록만 건너뜁니다.
braces로 블록 묶기
- **braces
{ }**는if또는else에 속하는 문장들을 묶습니다. - braces가 없으면 단일 다음 문장만이
if에 의해 제어됩니다. - 한 줄이라도 braces를 항상 사용하십시오 — 일반적인 버그를 방지합니다.
- 구조를 한눈에 볼 수 있도록 블록을suitably indented 하십시오.
분기 추적하기
if-else를 추적하려면 조건을 평가한 후 해당하는 분기를 실행합니다.score = 75와 함께:75 >= 60은true입니다 →if블록 실행 → "Pass" 출력.score = 40와 함께:40 >= 60은false이 아닙니다 →else블록 실행 → "Fail" 출력.- 선택된 분기의 코드만 실행됩니다.
괄호 없이, if는 바로 뒤에 있는 ONE statement(한 줄의 문장)만 제어합니다. 따라서 if (x > 0) a(); b();은 항상 b() — 즉, 공백 indentation이 속이는 것 — 실행됩니다. 반드시 블록을 { }로 감싸십시오. 그리고 if-else에서는 exactly one(정확히 하나)의 branch(가지)만 실행되며, 별개의 if 문장들과 달리 두 가지 모두에 fall through(연속 실행)할 수 없습니다.
if-else를 이용한 평가:
if (score >= 90) { grade = "A"; } else { grade = "B"; }score = 95→ 조건true→grade이"A"일 때 실행됩니다.score = 80→ 조건false→grade이"B"일 때 실행됩니다.
if 문장은 조건이 true일 때만 블록을 실행하며, 선택 사항인 **else**은 조건이 false일 때 대체 코드를 실행합니다 — 정확히 하나의 가지가 실행됩니다. 각 블록을 묶으려면 **괄호 { }**를 사용하십시오(사용하지 않으면 다음 단일 문장만 제어됩니다). 조건을 평가한 후 해당하는 가지를 실행하여 추적하십시오.
어떤 분기가 실행될까요?
첫 번째로 참인 조건에 해당하는 블록이 실행되고 나머지는 건너뜁니다.
if-else 문장에서 두 분기 중 몇 개가 실행되나요?
난이도 1/5 · 100 코인 + 오늘 첫 완료 시 소액 보너스
조건에 따라 정확히 하나의 분기가 실행됩니다.
if (score >= 60) then Print Pass, else Print Fail. score = 40일 때, 무엇이 출력됩니까?
난이도 1/5 · 100 코인 + 오늘 첫 완료 시 소액 보너스
40 >= 60는 거짓 → else 블록 실행 → Fail.
중괄호가 없는 if 문장은 다음 단일 문장만 제어합니다.
난이도 1/5 · 100 코인 + 오늘 첫 완료 시 소액 보너스
중괄호는 블록을 묶습니다; 없으면 단일 문장만 조건부입니다.
bare if (else 없음)는 조건이 거짓일 때 단순히 블록을 건너뜁니다.
난이도 1/5 · 100 코인 + 오늘 첫 완료 시 소액 보너스
else가 없으면, 거짓 조건은 아무것도 하지 않습니다.
if 조건이 거짓일 때 실행되는 절은 ___ 절입니다 (한 단어).
난이도 1/5 · 100 코인 + 오늘 첫 완료 시 소액 보너스
else는 대체 분기를 제공합니다.