Récapitulatif - Créer une structure Book
Fait partie de la section Logique & Flux du Journey Rust de Coddy. Leçon 26 sur 66.
Défi
FacileVous recevrez quatre entrées : un titre de livre, un nom d’auteur, une année de publication (sous forme d’entier) et un nombre de pages (sous forme d’entier). Définissez une structure Book avec quatre champs : title de type String, author de type String, year de type i32 et pages de type i32. Créez une instance de cette structure à l’aide des valeurs d’entrée et affichez les informations du livre.
Exigences :
- Définissez une structure
Bookavec les champs suivants :title: String,author: String,year: i32etpages: i32 - Lisez la première entrée comme titre du livre
- Lisez la deuxième entrée comme nom de l’auteur
- Lisez la troisième entrée et convertissez-la en
i32pour l’année de publication - Lisez la quatrième entrée et convertissez-la en
i32pour le nombre de pages - Créez une instance de la structure
Bookavec ces valeurs - Affichez les informations du livre dans le format exact indiqué ci-dessous
Entrée :
- Première ligne : titre du livre (par exemple,
The Rust Programming Language) - Deuxième ligne : nom de l’auteur (par exemple,
Steve Klabnik) - Troisième ligne : année de publication sous forme d’entier (par exemple,
2018) - Quatrième ligne : nombre de pages sous forme d’entier (par exemple,
552)
Sortie :
- Première ligne :
Book: [title] - Deuxième ligne :
Author: [author] - Troisième ligne :
Year: [year] - Quatrième ligne :
Pages: [pages]
Essayez vous-même
use std::io;
// TODO: Définir la structure Book ici avec les champs : title, author, year, et pages
fn main() {
// Lire le titre du livre
let mut title = String::new();
io::stdin().read_line(&mut title).expect("Failed to read line");
let title = title.trim().to_string();
// Lire le nom de l'auteur
let mut author = String::new();
io::stdin().read_line(&mut author).expect("Failed to read line");
let author = author.trim().to_string();
// Lire l'année de publication
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");
// Lire le nombre de pages
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: Créer une instance de la structure Book en utilisant les valeurs saisies
// TODO: Afficher les informations du livre dans le format requis
}Toutes les leçons de Logique & Flux
1Structures de contrôle avancées
L'expression 'match'Filtrage de plusieurs valeursFiltrage d'intervallesL'expression 'if let'Les boucles en tant qu'expressionsRécapitulatif - Analyseur de commandes simple4Regrouper des données avec les structures
Qu'est-ce qu'une structure ?Aperçu des structuresAccéder aux champs d'une structureStructures mutablesLes structures comme paramètres de fonctionStructures tupleRécapitulatif - Créer une structure Book2Introduction aux vecteurs
Qu'est-ce qu'un vecteur ?Créer un vecteurAjouter des éléments avec pushAccéder aux éléments d'un vecteurItérer sur un vecteurItération mutableSupprimer des élémentsRécapitulatif - Suivi de score basique5Paires clé-valeur avec les Hash Maps
Qu'est-ce qu'une Hash Map ?Créer une Hash MapInsérer des paires clé-valeurAccéder aux valeursParcourir une Hash MapMettre à jour une valeurSupprimer une paireRécapitulatif - Compteur de mots8Projet : Inventaire d'articles simple
Configuration du projetAjouter un articleVérifier le stockVendre un articleAssembler le tout3Liste de tâches en ligne de commande
Configuration du projetAjouter une tâcheAfficher toutes les tâchesSupprimer une tâcheCode finalEntraînez-vous par vous-même : Compilateur Rust en ligne