학습
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. 실전 활용 예제
- 사용자 로그인 확인: 웹 애플리케이션에서 사용자가 입력한 비밀번호가 맞는지 확인하는 경우.
- 장바구니 상품 총합 계산: 쇼핑몰에서 장바구니에 담긴 상품의 총합을 계산할 때.
- 조건문에서 = 대신 == 사용:
- 반복문에서 종료 조건을 명확히 하지 않음:
- 제어문은 프로그램 흐름을 제어하는 중요한 요소입니다.
- 조건문은 특정 조건에 따라 코드를 실행하고, 반복문은 특정 조건을 만족하는 동안 코드를 반복합니다.
- 자주 발생하는 실수는 조건문에서의 대입과 비교의 혼동, 반복문에서의 종료 조건 미설정입니다.
- 다음에 학습하면 좋은 주제: 배열과 해시(Hash), 함수(메소드) 정의, 객체지향 프로그래밍.
input_password = "secret"
correct_password = "secret"
if input_password == correct_password
puts "로그인 성공!"
else
puts "비밀번호가 틀렸습니다."
end
total_price = 0
cart = [10000, 20000, 30000]
for price in cart
total_price += price
end
puts "총합: #{total_price}원"
5. 흔한 실수와 주의사항
- 잘못된 코드:
if age = 18 # 잘못된 코드
puts "성인입니다."
end
- 올바른 코드:
if age == 18 # 올바른 코드
puts "성인입니다."
end
- 잘못된 코드:
i = 1
while i <= 5
puts i
# i를 증가시키지 않음
end
- 올바른 코드:
i = 1
while i <= 5
puts i
i += 1 # i를 증가시켜 종료 조건을 충족
end