Menu
Coddy logo textTech

Итоги — Простой счетчик очков

Часть раздела Логика и управление потоком путешествия по Rust на Coddy. Урок 14 из 66.

challenge icon

Задание

Легко

Вы получите два входных значения: сначала список тестовых оценок, разделённых запятыми, а затем оценку для добавления. Создайте vector из исходных оценок, добавьте новую оценку, вычислите average всех оценок и выведите результаты.

Требования:

  • Прочитайте первый ввод, содержащий оценки, разделённые запятыми (например, 85,92,78)
  • Разделите String по запятым и выполните trim каждого отдельного токена перед convert в integer (например, используйте .trim() для каждого элемента после разделения)
  • Создайте mutable vector из этих оценок
  • Прочитайте второй ввод и convert его в integer (сначала выполните trim)
  • Используйте .push(), чтобы add новую оценку в vector
  • Вычислите average всех оценок в vector
  • Выведите общее number оценок
  • Выведите average оценку (как integer)

Ввод:

  • Первая строка: разделённые запятыми integer, представляющие исходные оценки (например, 85,92,78)
  • Вторая строка: integer, представляющее новую оценку для добавления

Вывод:

  • Первая строка: общее number оценок
  • Вторая строка: average оценка (как integer, усечённая)

Примечание: Всегда вызывайте .trim() для всей входной строки и для каждого отдельного токена оценки после разделения по запятой. Входные строки могут содержать невидимые пробельные символы или символы новой строки, которые вызовут panic при разборе, если их не удалить.

Попробуйте сами

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