루비 연습 문제
1단계: 루비 기초 감각 익히기 (초급 입문)
목표: 문법, 출력, 변수, 제어문에 익숙해지기
"Hello, Ruby!"를 출력하는 프로그램 작성- 이름을 변수에 저장하고
"안녕하세요, 이름님"출력 - 두 정수를 변수로 받아 합, 차, 곱, 몫 출력
- 숫자를 입력받아 짝수/홀수 판별
- 점수(0~100)를 받아 A/B/C/D/F 등급 출력
- 1부터 100까지 출력 (for, while 각각 사용)
- 1~100 중 3의 배수만 출력
- 사용자 입력이
"exit"이면 종료되는 루프 작성 - 구구단 2단 출력
- 구구단 전체 출력
2단계: 메서드와 조건 분기 (초급)
목표: 메서드 정의, 리턴값, 재사용
- 두 수를 받아 더한 값을 반환하는 메서드 작성
- 세 수 중 최댓값을 반환하는 메서드
- 숫자를 받아 절댓값을 반환하는 메서드
- 문자열을 받아 길이를 반환하는 메서드
- 원의 반지름을 받아 넓이를 계산하는 메서드
- 나이를 받아 성인/미성년자 판별 메서드
- 문자열과 반복 횟수를 받아 반복 출력하는 메서드
- BMI 계산 메서드 작성
- 비밀번호 길이가 8자 이상인지 검사하는 메서드
- 윤년 여부를 판단하는 메서드
3단계: 배열(Array)과 반복 (초급 → 중급)
목표: 컬렉션과 반복 처리에 익숙해지기
- 숫자 배열의 합을 구하기
- 배열에서 최댓값, 최솟값 찾기
- 배열 요소를 하나씩 출력 (each 사용)
- 배열의 짝수만 출력
- 문자열 배열에서 글자 수가 5 이상인 단어만 출력
- 배열 요소를 모두 대문자로 변환
- 배열에서 특정 값이 있는지 검사
- 배열의 평균값 구하기
- 중복 제거된 배열 만들기
- 배열을 오름차순/내림차순 정렬
4단계: 해시(Hash) 다루기 (중급 초입)
목표: 키-값 구조 이해
- 사람의 이름과 나이를 해시로 표현
- 해시에서 특정 키의 값 출력
- 모든 키와 값을
"이름: 나이"형식으로 출력 - 가장 나이가 많은 사람 찾기
- 점수 해시에서 평균 점수 계산
- 해시에 새로운 요소 추가
- 해시에서 특정 조건(나이 ≥ 30)인 항목만 출력
- 해시 키 목록만 배열로 추출
- 해시 값 목록만 배열로 추출
- 단어 빈도수 계산 프로그램
5단계: 블록과 Enumerable (중급)
목표: 루비스러운 코드 작성
map을 사용해 배열의 제곱값 배열 생성select로 조건에 맞는 값 필터링reject로 특정 조건 제거reduce로 배열 합계 계산- 문자열 배열을 하나의 문자열로 합치기
- 배열에서 가장 긴 문자열 찾기
- 해시를 배열로 변환
- 배열을 해시로 변환 (index → 값)
each_with_index사용- 사용자 정의 메서드에 블록 전달하기
6단계: 문자열 처리 (중급)
목표: 텍스트 처리 감각 익히기
- 문자열에서 모음 개수 세기
- 문자열 뒤집기
- 특정 문자 제거
- 공백 기준으로 단어 분리
- 단어 수 세기
- 문자열이 회문인지 검사
- 이메일 형식 간단 검증
- 파일명에서 확장자 추출
- snake_case → camelCase 변환
- 문자열 압축 (aaabb → a3b2)
7단계: 객체지향 기초 (중급)
목표: 클래스와 객체 개념 이해
- Person 클래스 정의 (이름, 나이)
- 인스턴스 메서드 작성
- 생성자(
initialize) 사용 - 접근자(
attr_accessor) 사용 - 나이 증가 메서드
- 여러 Person 객체를 배열로 관리
- 클래스 메서드 작성
- 간단한 BankAccount 클래스
- 입금/출금 기능 구현
- 잔액 부족 예외 처리
Languages
Ruby
100%