Настройка проекта
Часть раздела Logic & Flow путешествия по Rust на Coddy — урок 49 из 66.
Задание
ЛегкоВы получите одну строку ввода: список описаний задач, разделенных запятыми. Создайте пустой изменяемый вектор для хранения задач, разделите входную строку по запятым, добавьте каждую задачу в вектор и выведите общее количество задач, а затем каждую задачу на отдельной строке.
Требования:
- Прочитайте входные данные, содержащие описания задач, разделенные запятыми (например,
Buy groceries,Call dentist,Finish homework) - Создайте пустой изменяемый вектор типа
Vec<String> - Разделите входную строку по запятым, чтобы получить отдельные задачи
- Используйте
.push()для добавления каждой задачи в вектор - Выведите общее количество задач в формате:
Total tasks: X - Выведите каждую задачу на отдельной строке в формате:
Task: [task description]
Ввод:
- Одна строка, содержащая описания задач, разделенные запятыми (например,
Buy groceries,Call dentist,Finish homework)
Вывод:
- Первая строка:
Total tasks: X, где X — количество задач - Последующие строки: Каждая задача выводится как
Task: [task description]
Попробуйте сами
use std::io;
fn main() {
// Прочитать ввод
let mut input = String::new();
io::stdin().read_line(&mut input).expect("Failed to read line");
let input = input.trim();
// TODO: Напишите свой код ниже
// Создайте пустой изменяемый вектор
// Разделите ввод по запятым
// Добавьте каждую задачу в вектор, используя .push()
// Выведите общее количество задач
// Выведите каждую задачу
}Все уроки раздела Logic & Flow
1Продвинутое управление потоком выполнения
Выражение 'match'Сопоставление нескольких значенийСопоставление диапазоновВыражение 'if let'Циклы как выраженияИтоги — Простой парсер команд4Группировка данных с помощью структур
Что такое структура?Обзор структурДоступ к полям структурыИзменяемые структурыСтруктуры как параметры функцийКортежные структурыИтоги: создание структуры Book7Обработка ошибок с помощью 'Result'
Что такое 'Result'?Использование 'match' с 'Result'is_ok() и is_err()Сокращения: unwrap и expectОператор вопросительного знака '?'Парсинг строк в числаИтоги: функция безопасного деления10Замыкания и анонимные функции
Что такое замыкание?Определение простого замыканияЗамыкания с параметрамиЗахват окруженияИтоги: Простое замыкание-сумматор2Введение в векторы
Что такое вектор?Создание вектораДобавление элементов с помощью pushДоступ к элементам вектораИтерация по векторуИзменяемая итерацияУдаление элементовИтоги — Простой счетчик очков5Пары «ключ-значение» в Hash Map
Что такое Hash Map?Создание Hash MapВставка пар «ключ-значение»Доступ к значениямИтерация по Hash MapОбновление значенияУдаление парыИтоги — Счетчик слов8Проект: Простой инвентарь товаров
Настройка проектаДобавление товараПроверка наличияПродажа товараСобираем всё воедино3Список дел в командной строке
Настройка проектаДобавление задачиПросмотр всех задачУдаление задачиИтоговый код6Обработка отсутствия значения с 'Option'
Что такое 'Option'?Использование 'match' с 'Option'is_some() и is_none()Распаковка 'Option'Метод expectЗначение по умолчанию: unwrap_orИтоги: поиск элемента