배열 메서드
Coddy Ruby 여정의 기초 섹션에 포함된 레슨 — 88개 중 61번째.
Ruby는 배열 작업을 더 쉽게 만들어주는 여러 가지 내장 메서드를 제공합니다. 이러한 메서드들을 사용하면 복잡한 코드를 직접 작성하지 않고도 요소를 정렬, 반전 및 찾을 수 있습니다.
sort 메서드는 요소들을 오름차순으로 정렬합니다:
numbers = [3, 1, 4, 1, 5]
puts numbers.sort # 출력: 1, 1, 3, 4, 5요소의 순서를 뒤집으려면 reverse 메서드를 사용하세요:
letters = ["a", "b", "c"]
puts letters.reverse # 출력: c, b, a이러한 메서드들을 결합하여 내림차순으로 정렬할 수 있습니다:
scores = [85, 92, 78, 95]
puts scores.sort.reverse # 출력: 95, 92, 85, 78min 및 max 메서드는 가장 작은 값과 가장 큰 값을 빠르게 찾습니다:
prices = [29, 15, 42, 8]
puts prices.min # 출력: 8
puts prices.max # 출력: 42숫자 요소의 합계를 계산하려면 sum을 사용하세요:
quantities = [2, 5, 3]
puts quantities.sum # 출력: 10sort와 reverse는 원본을 변경하지 않고 새로운 배열을 반환한다는 점에 유의하세요. 원본 배열을 직접 수정하려면 sort! 또는 reverse!와 같이 메서드 이름에 !를 추가하세요.
챌린지
쉬움쉼표로 구분된 정수들이 포함된 한 줄의 입력을 읽습니다 (예: 5,2,8,1,9,3).
입력을 정수 배열로 분할한 후, 다음 내용을 각각 별도의 줄에 출력하세요:
- 오름차순으로 정렬된 배열 (각 요소를 개별 줄에 출력)
- 내림차순으로 정렬된 배열 (각 요소를 개별 줄에 출력)
- 최솟값
- 최댓값
- 모든 요소의 합계
명확성을 위해 각 섹션 사이에 빈 줄을 출력하세요.
예를 들어, 입력이 5,2,8,1,9,3인 경우 출력은 다음과 같아야 합니다:
1
2
3
5
8
9
9
8
5
3
2
1
1
9
28입력이 10,30,20인 경우 출력은 다음과 같아야 합니다:
10
20
30
30
20
10
10
30
60입력이 7,3,5,1인 경우 출력은 다음과 같아야 합니다:
1
3
5
7
7
5
3
1
1
7
16치트 시트
Ruby는 배열 작업을 위한 내장 메서드를 제공합니다:
sort 메서드는 요소를 오름차순으로 정렬합니다:
numbers = [3, 1, 4, 1, 5]
puts numbers.sort # Outputs: 1, 1, 3, 4, 5reverse 메서드는 요소의 순서를 반대로 뒤집습니다:
letters = ["a", "b", "c"]
puts letters.reverse # Outputs: c, b, a메서드를 결합하여 내림차순으로 정렬할 수 있습니다:
scores = [85, 92, 78, 95]
puts scores.sort.reverse # Outputs: 95, 92, 85, 78min과 max 메서드는 최솟값과 최댓값을 찾습니다:
prices = [29, 15, 42, 8]
puts prices.min # Outputs: 8
puts prices.max # Outputs: 42sum 메서드는 숫자 요소들의 합계를 계산합니다:
quantities = [2, 5, 3]
puts quantities.sum # Outputs: 10참고: sort와 reverse는 원본을 변경하지 않고 새로운 배열을 반환합니다. 원본 배열을 수정하려면 sort! 또는 reverse!를 사용하세요.
직접 해보기
# 쉼표로 구분된 정수 읽기
input = gets.chomp
# TODO: 아래에 코드를 작성하세요
# 1. 입력을 정수 배열로 분할
# 2. 배열을 오름차순으로 정렬하고 각 요소 출력
# 3. 빈 줄 출력
# 4. 배열을 내림차순으로 정렬하고 각 요소 출력
# 5. 빈 줄 출력
# 6. 최솟값 출력
# 7. 최댓값 출력
# 8. 모든 요소의 합계 출력이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.