IMCAT.DEV
로그인 가입
Ruby 입문 문법

Ruby 제어문 (Control Structures)

Ruby 제어문 (Control Structures) — 초급

제어문 (Control Structures)

1. 도입 (왜 배워야 하는가)

제어문은 프로그램의 흐름을 제어하는 데 필수적인 요소입니다. 실제로, 모든 프로그래밍 언어에서 제어문은 조건에 따라 코드의 실행 경로를 변경하기 위해 사용됩니다. 예를 들어, 웹 애플리케이션에서 사용자의 입력에 따라 다른 페이지로 이동해야 할 때 제어문이 필요합니다. 제어문을 이해하지 못하면, 조건에 따라 다른 행동을 취해야 하는 상황에서 코드를 작성할 수 없게 되어, 프로그램의 기능이 제한되거나 오류가 발생할 수 있습니다.

2. 핵심 개념 설명

제어문은 크게 조건문과 반복문으로 나눌 수 있습니다.

  • 조건문 (if, else): 특정 조건이 참인지 거짓인지에 따라 코드의 실행 여부를 결정합니다.
  • - 실생활 비유: 날씨가 좋으면 소풍을 가고, 나쁘면 집에 있는 것과 같습니다.

  • 반복문 (while, for): 특정 조건이 참인 동안 또는 정해진 횟수만큼 코드를 반복 실행합니다.
  • - 실생활 비유: 돈을 모으기 위해 매달 저축하는 것과 같습니다.

    용어설명
    if조건이 참일 때 실행되는 코드 블록
    else조건이 거짓일 때 실행되는 코드 블록
    while조건이 참인 동안 반복되는 코드 블록
    for정해진 횟수만큼 반복되는 코드 블록

    3. 기본 코드 예제

    아래는 조건문과 반복문을 사용하는 간단한 예제입니다.

    # 나이가 18세 이상인지 확인하는 코드
    age = 20
    
    if age >= 18
      puts "성인입니다."
    else
      puts "미성년자입니다."
    end
  • 실행 결과:
  • 성인입니다.
  • 코드 설명:
  • - age = 20: 변수 age에 20을 할당합니다. - if age >= 18: age가 18 이상인지 확인합니다. - puts "성인입니다.": 조건이 참이면 이 문장을 출력합니다. - else: 조건이 거짓일 경우 실행되는 블록입니다. - puts "미성년자입니다.": 조건이 거짓일 경우 이 문장을 출력합니다.

    # 1부터 5까지 출력하는 반복문
    for i in 1..5
      puts i
    end
  • 실행 결과:
  • 1
    2
    3
    4
    5
  • 코드 설명:
  • - for i in 1..5: 1부터 5까지의 숫자를 반복합니다. - puts i: 현재 i 값을 출력합니다.

    4. 실전 활용 예제

    1. 사용자 로그인 확인: 웹 애플리케이션에서 사용자가 입력한 비밀번호가 맞는지 확인하는 경우.
    2.    input_password = "secret"
         correct_password = "secret"
      
         if input_password == correct_password
           puts "로그인 성공!"
         else
           puts "비밀번호가 틀렸습니다."
         end
    3. 장바구니 상품 총합 계산: 쇼핑몰에서 장바구니에 담긴 상품의 총합을 계산할 때.
    4.    total_price = 0
         cart = [10000, 20000, 30000]
      
         for price in cart
           total_price += price
         end
      
         puts "총합: #{total_price}원"

      5. 흔한 실수와 주의사항

    5. 조건문에서 = 대신 == 사용:
    6. - 잘못된 코드:

         if age = 18 # 잘못된 코드
           puts "성인입니다."
         end

      - 올바른 코드:

         if age == 18 # 올바른 코드
           puts "성인입니다."
         end
    7. 반복문에서 종료 조건을 명확히 하지 않음:
    8. - 잘못된 코드:

         i = 1
         while i <= 5
           puts i
           # i를 증가시키지 않음
         end

      - 올바른 코드:

         i = 1
         while i <= 5
           puts i
           i += 1 # i를 증가시켜 종료 조건을 충족
         end

      6. 정리

    9. 제어문은 프로그램 흐름을 제어하는 중요한 요소입니다.
    10. 조건문은 특정 조건에 따라 코드를 실행하고, 반복문은 특정 조건을 만족하는 동안 코드를 반복합니다.
    11. 자주 발생하는 실수는 조건문에서의 대입과 비교의 혼동, 반복문에서의 종료 조건 미설정입니다.
    12. 다음에 학습하면 좋은 주제: 배열과 해시(Hash), 함수(메소드) 정의, 객체지향 프로그래밍.