요약 - 기본 점수 추적기
Coddy Rust 여정의 논리와 흐름 섹션에 포함된 레슨. 66개 중 14번째.
챌린지
쉬움두 개의 입력을 받습니다. 첫 번째는 쉼표로 구분된 테스트 scores 목록이고, 두 번째는 추가할 score입니다. 초기 scores로 mutable vector를 Create하고, 새 score를 add한 다음, 모든 scores의 average를 Calculate하고 결과를 Print하세요.
Requirements:
- 쉼표로 구분된 scores가 포함된 첫 번째 입력을 Read하세요(예:
85,92,78) - 문자열을 commas로 Split하고 integer로 convert하기 전에 각 개별 토큰을 trim하세요(예: Split 후 각 요소에
.trim()사용) - 이 scores로 mutable vector를 Create하세요
- 두 번째 입력을 Read하고 integer로 convert하세요(먼저 trim)
.push()를 사용하여 새 score를 vector에 add하세요- vector의 모든 scores의 average를 Calculate하세요
- 전체 scores의 number를 Print하세요
- average score를 Print하세요(integer로)
Input:
- 첫 번째 line: 초기 scores를 나타내는 comma-separated integers(예:
85,92,78) - 두 번째 line: add할 새 score를 나타내는 integer
Output:
- 첫 번째 line: 전체 scores의 number
- 두 번째 line: average score(정수로, 버림)
Note: 항상 전체 input line에 .trim()을 호출하고, comma로 Split한 후 각 개별 score token에도 반드시 .trim()을 호출하세요. 입력 문자열에는 제거하지 않으면 parsing할 때 panic을 일으키는 보이지 않는 whitespace 또는 newline characters가 포함될 수 있습니다.
직접 해보기
use std::io;
fn main() {
// 쉼표로 구분된 점수 읽기
let mut scores_input = String::new();
io::stdin().read_line(&mut scores_input).expect("Failed to read line");
// 추가할 새 점수 읽기
let mut new_score_input = String::new();
io::stdin().read_line(&mut new_score_input).expect("Failed to read line");
// TODO: 아래에 코드를 작성하세요
// 1. scores_input을 쉼표로 분할하고 정수로 변환
// 2. 이 점수들로 가변 벡터 생성
// 3. new_score_input을 정수로 변환
// 4. 새 점수를 벡터에 푸시
// 5. 모든 점수의 평균 계산
// 점수의 총 개수 출력
// println!("{}", total_scores);
// 평균 점수 출력
// println!("{}", average);
}논리와 흐름의 모든 레슨
직접 연습해 보세요: 온라인 Rust 컴파일러