Menu
Coddy logo textTech

Итоги: создание структуры Book

Часть раздела Logic & Flow путешествия по Rust на Coddy — урок 26 из 66.

challenge icon

Задание

Легко

Вы получите четыре входных значения: название книги, имя автора, год издания (целое число) и количество страниц (целое число). Определите структуру Book с четырьмя полями: title типа String, author типа String, year типа i32 и pages типа i32. Создайте экземпляр этой структуры, используя входные значения, и выведите информацию о книге.

Требования:

  • Определите структуру Book с полями: title: String, author: String, year: i32 и pages: i32
  • Считайте первое входное значение как название книги
  • Считайте второе входное значение как имя автора
  • Считайте третье входное значение и преобразуйте его в i32 для года издания
  • Считайте четвертое входное значение и преобразуйте его в i32 для количества страниц
  • Создайте экземпляр структуры Book с этими значениями
  • Выведите информацию о книге в точном формате, показанном ниже

Ввод:

  • Первая строка: Название книги (например, The Rust Programming Language)
  • Вторая строка: Имя автора (например, Steve Klabnik)
  • Третья строка: Год издания как целое число (например, 2018)
  • Четвертая строка: Количество страниц как целое число (например, 552)

Вывод:

  • Первая строка: Book: [title]
  • Вторая строка: Author: [author]
  • Третья строка: Year: [year]
  • Четвертая строка: Pages: [pages]

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

use std::io;

// TODO: Определите здесь структуру Book с полями: title, author, year и pages

fn main() {
    // Чтение названия книги
    let mut title = String::new();
    io::stdin().read_line(&mut title).expect("Failed to read line");
    let title = title.trim().to_string();
    
    // Чтение имени автора
    let mut author = String::new();
    io::stdin().read_line(&mut author).expect("Failed to read line");
    let author = author.trim().to_string();
    
    // Чтение года издания
    let mut year_input = String::new();
    io::stdin().read_line(&mut year_input).expect("Failed to read line");
    let year: i32 = year_input.trim().parse().expect("Failed to parse year");
    
    // Чтение количества страниц
    let mut pages_input = String::new();
    io::stdin().read_line(&mut pages_input).expect("Failed to read line");
    let pages: i32 = pages_input.trim().parse().expect("Failed to parse pages");
    
    // TODO: Создайте экземпляр структуры Book, используя введенные значения
    
    // TODO: Выведите информацию о книге в требуемом формате
}

Все уроки раздела Logic & Flow