2026-01-15 14:01:21 +09:00
2026-01-15 14:01:21 +09:00
2026-01-15 14:01:21 +09:00
2026-01-15 14:01:21 +09:00
2026-01-15 14:01:21 +09:00
2026-01-15 14:01:21 +09:00
2026-01-15 14:01:21 +09:00
2026-01-15 14:01:21 +09:00
2026-01-15 14:01:21 +09:00
2026-01-15 14:01:21 +09:00
2026-01-15 14:01:21 +09:00

루비 연습 문제

1단계: 루비 기초 감각 익히기 (초급 입문)

목표: 문법, 출력, 변수, 제어문에 익숙해지기

  1. "Hello, Ruby!"를 출력하는 프로그램 작성
  2. 이름을 변수에 저장하고 "안녕하세요, 이름님" 출력
  3. 두 정수를 변수로 받아 합, 차, 곱, 몫 출력
  4. 숫자를 입력받아 짝수/홀수 판별
  5. 점수(0~100)를 받아 A/B/C/D/F 등급 출력
  6. 1부터 100까지 출력 (for, while 각각 사용)
  7. 1~100 중 3의 배수만 출력
  8. 사용자 입력이 "exit"이면 종료되는 루프 작성
  9. 구구단 2단 출력
  10. 구구단 전체 출력

2단계: 메서드와 조건 분기 (초급)

목표: 메서드 정의, 리턴값, 재사용

  1. 두 수를 받아 더한 값을 반환하는 메서드 작성
  2. 세 수 중 최댓값을 반환하는 메서드
  3. 숫자를 받아 절댓값을 반환하는 메서드
  4. 문자열을 받아 길이를 반환하는 메서드
  5. 원의 반지름을 받아 넓이를 계산하는 메서드
  6. 나이를 받아 성인/미성년자 판별 메서드
  7. 문자열과 반복 횟수를 받아 반복 출력하는 메서드
  8. BMI 계산 메서드 작성
  9. 비밀번호 길이가 8자 이상인지 검사하는 메서드
  10. 윤년 여부를 판단하는 메서드

3단계: 배열(Array)과 반복 (초급 → 중급)

목표: 컬렉션과 반복 처리에 익숙해지기

  1. 숫자 배열의 합을 구하기
  2. 배열에서 최댓값, 최솟값 찾기
  3. 배열 요소를 하나씩 출력 (each 사용)
  4. 배열의 짝수만 출력
  5. 문자열 배열에서 글자 수가 5 이상인 단어만 출력
  6. 배열 요소를 모두 대문자로 변환
  7. 배열에서 특정 값이 있는지 검사
  8. 배열의 평균값 구하기
  9. 중복 제거된 배열 만들기
  10. 배열을 오름차순/내림차순 정렬

4단계: 해시(Hash) 다루기 (중급 초입)

목표: 키-값 구조 이해

  1. 사람의 이름과 나이를 해시로 표현
  2. 해시에서 특정 키의 값 출력
  3. 모든 키와 값을 "이름: 나이" 형식으로 출력
  4. 가장 나이가 많은 사람 찾기
  5. 점수 해시에서 평균 점수 계산
  6. 해시에 새로운 요소 추가
  7. 해시에서 특정 조건(나이 ≥ 30)인 항목만 출력
  8. 해시 키 목록만 배열로 추출
  9. 해시 값 목록만 배열로 추출
  10. 단어 빈도수 계산 프로그램

5단계: 블록과 Enumerable (중급)

목표: 루비스러운 코드 작성

  1. map을 사용해 배열의 제곱값 배열 생성
  2. select로 조건에 맞는 값 필터링
  3. reject로 특정 조건 제거
  4. reduce로 배열 합계 계산
  5. 문자열 배열을 하나의 문자열로 합치기
  6. 배열에서 가장 긴 문자열 찾기
  7. 해시를 배열로 변환
  8. 배열을 해시로 변환 (index → 값)
  9. each_with_index 사용
  10. 사용자 정의 메서드에 블록 전달하기

6단계: 문자열 처리 (중급)

목표: 텍스트 처리 감각 익히기

  1. 문자열에서 모음 개수 세기
  2. 문자열 뒤집기
  3. 특정 문자 제거
  4. 공백 기준으로 단어 분리
  5. 단어 수 세기
  6. 문자열이 회문인지 검사
  7. 이메일 형식 간단 검증
  8. 파일명에서 확장자 추출
  9. snake_case → camelCase 변환
  10. 문자열 압축 (aaabb → a3b2)

7단계: 객체지향 기초 (중급)

목표: 클래스와 객체 개념 이해

  1. Person 클래스 정의 (이름, 나이)
  2. 인스턴스 메서드 작성
  3. 생성자(initialize) 사용
  4. 접근자(attr_accessor) 사용
  5. 나이 증가 메서드
  6. 여러 Person 객체를 배열로 관리
  7. 클래스 메서드 작성
  8. 간단한 BankAccount 클래스
  9. 입금/출금 기능 구현
  10. 잔액 부족 예외 처리
Description
Ruby Examples
Readme 42 KiB
Languages
Ruby 100%