Menu
Coddy logo textTech

Afficher toutes les tâches

Fait partie de la section Logic & Flow du Journey Rust de Coddy — leçon 17 sur 66.

challenge icon

Défi

Facile

Vous recevrez deux entrées : premièrement, une liste de tâches existantes séparées par des virgules, et deuxièmement, un numéro de tâche à consulter (indexation commençant à 1). Lisez les deux entrées, créez un vecteur à partir des tâches et affichez toutes les tâches avec leurs numéros, en mettant en évidence la tâche demandée.

Exigences :

  • Lisez la première entrée contenant les descriptions des tâches séparées par des virgules (par exemple, Buy groceries,Call dentist,Finish homework)
  • Divisez la chaîne par des virgules pour obtenir les tâches individuelles
  • Créez un vecteur et ajoutez-y chaque tâche
  • Lisez la deuxième entrée et convertissez-la en un entier (le numéro de la tâche à mettre en évidence, en utilisant une indexation commençant à 1)
  • Affichez le nombre total de tâches au format : Total tasks: X
  • Parcourez le vecteur et affichez chaque tâche avec son numéro (commençant à 1)
  • Pour le numéro de tâche demandé, affichez-le au format : [X] [task description] (selected)
  • Pour toutes les autres tâches, affichez-les au format : [X] [task description]

Entrée :

  • Première ligne : Descriptions des tâches séparées par des virgules (par exemple, Buy groceries,Call dentist,Finish homework)
  • Deuxième ligne : Un entier représentant le numéro de la tâche à mettre en évidence (indexation commençant à 1)

Sortie :

  • Première ligne : Total tasks: X où X est le nombre total de tâches
  • Lignes suivantes : Chaque tâche avec son numéro au format [X] [task description]
  • La tâche sélectionnée doit avoir (selected) ajouté à la fin

Essayez vous-même

use std::io::{self, BufRead};

fn main() {
    let stdin = io::stdin();
    let mut lines = stdin.lock().lines();
    
    // Lire les tâches séparées par des virgules
    let tasks_input = lines.next().unwrap().unwrap();
    
    // Lire le numéro de la tâche à mettre en évidence
    let task_number: usize = lines.next().unwrap().unwrap().trim().parse().unwrap();
    
    // TODO: Écrivez votre code ci-dessous
    // Diviser tasks_input par les virgules et créer un vecteur
    // Afficher le nombre total de tâches
    // Parcourir les tâches et afficher chacune avec son numéro
    // Mettre en évidence la tâche sélectionnée en ajoutant " (selected)"
    
}

Toutes les leçons de Logic & Flow