코딩일기

for문과 while문의 차이 | 반복문 비교 정리 | Java/C/Python

jhy_2023 2025. 11. 10. 17:45
728x90
반응형

프로그래밍에서 for문while문은 모두 반복문(Loop Statement) 으로,
특정 조건이 만족되는 동안 명령문을 반복 실행할 때 사용됩니다.
하지만 두 문법은 사용 목적과 구조, 그리고 가독성 면에서 차이가 있습니다.
for문과 while문의 차이를 자세히 비교해보겠습니다.


📌 반복문이란?

반복문(Loop Statement)
어떤 조건이 참(true)인 동안 명령문을 여러 번 반복 실행하는 제어문입니다.

Java, C, Python 모두에서 지원하며 대표적으로 다음 두 가지가 있습니다.

  • for문
  • while문

1️⃣ for문이란?

for문은 반복 횟수가 미리 정해진 경우에 사용하는 반복문입니다.
초기값, 조건식, 증감식을 한 줄에 선언하여 반복 제어를 깔끔하게 할 수 있습니다.

🔎 적합한 상황

  • 반복 횟수가 정해진 경우
  • 배열, 리스트, 문자열 등의 요소를 순서대로 처리할 때

🔎 예시

// Java / C 예시
for(int i = 0; i < 5; i++) {
    System.out.println("안녕!");
}
  • 초기식: int i = 0 → 반복 변수 초기화
  • 조건식: i < 5 → 참인 동안 반복
  • 증감식: i++ → 매 반복 후 증가
  • 실행 순서 : 
    • 초기식 실행
    • 조건식 검사
    • 참이면 반복문 실행
    • 증감식 실행 후 다시 조건식 검사
      => 총 5번 반복 후 종료됩니다.
# Python 예시
for i in range(5):
    print("안녕!")
  • Python에서는 range(5)가 0부터 4까지 숫자를 자동으로 생성해 총 5회 반복하게 됩니다.
반응형

2️⃣ while문이란?

while문은 조건이 참인 동안 계속 반복되는 구조로,
언제 반복이 끝날지 알 수 없을 때 주로 사용합니다.

🔎 적합한 상황

  • 반복 횟수를 예측할 수 없는 경우
  • 사용자 입력, 파일 끝(EOF), 네트워크 상태 등 외부 요인에 따라 반복할 때

🔎 예시

// Java / C 예시
int i = 0;
while(i < 5) {
    System.out.println("안녕!");
    i++;
}
  • 조건식(i < 5)이 참일 때만 반복합니다.
  • i++ 증가식은 반드시 내부에서 작성해야 합니다.
# Python 예시
i = 0
while i < 5:
    print("안녕!")
    i += 1
728x90

📌 for문과 while문은 왜 나뉘어져 있을까?

두 문법의 목적이 다르기 때문입니다. 즉, 코드의 의도를 명확히 표현하기 위해 나뉘어 있습니다. 프로그래밍 언어에서는 단순히 “작동”하는 것보다, “왜 이 반복이 필요한가?”를 가독성 있게 표현하는 것이 중요하기 때문에 나뉘어져 있습니다.

🔎 상황 예시

while(true) {
    // 반복 실행 코드
}

무한 반복이 필요한 경우 (예: 게임 루프, 서버 대기 등) for(;;) 문법으로도 가능하지만, while(true)가 더 직관적이라 일반적으로 선호됩니다.


📌 핵심 요약 정리

for문은 “반복 횟수가 정해진 경우”, while문은 “조건이 만족될 때까지 반복하는 경우” 사용


"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."

728x90
반응형