Menu
Coddy logo textTech

Ajout et mise à jour d'articles

Fait partie de la section Logique et Flux du Journey C++ de Coddy — leçon 31 sur 56.

challenge icon

Défi

Facile

Étendez votre système de suivi d'inventaire en implémentant la fonctionnalité permettant d'ajouter de nouveaux articles ou de mettre à jour les quantités d'articles existants. Cette leçon démontre comment les maps gèrent automatiquement à la fois les nouvelles entrées et les mises à jour de celles existantes.

Les entrées suivantes seront fournies :

  • Un entier n représentant le nombre d'opérations d'inventaire à effectuer
  • Ensuite n paires d'entrées :
    • Une chaîne de caractères représentant le nom de l'article
    • Un entier représentant la quantité à ajouter

Votre programme doit :

  1. Commencer avec l'inventaire initial suivant :
    inventory["apples"] = 50;
    inventory["bananas"] = 30;
    inventory["oranges"] = 25;
  2. Lire le nombre d'opérations d'inventaire
  3. Pour chaque opération, lire un nom d'article et une quantité
  4. Ajouter la quantité au stock actuel de l'article dans la map d'inventaire en utilisant l'opérateur crochet
  5. Afficher un message de confirmation pour chaque opération montrant le nom de l'article et sa nouvelle quantité totale
  6. Après toutes les opérations, afficher l'inventaire final montrant tous les articles et leurs quantités mises à jour

Utilisez le format de sortie exact suivant :

Pour chaque opération d'inventaire :

Added [quantity] [item_name]. New total: [new_total]

Inventaire final :

Final Inventory:
[item1]: [quantity1]
[item2]: [quantity2]
[item3]: [quantity3]
...

L'inventaire final doit être affiché par ordre alphabétique selon le nom de l'article. Utilisez l'opérateur crochet pour ajouter des quantités - si l'article existe déjà, il s'ajoutera à la quantité actuelle ; s'il s'agit d'un nouvel article, il sera créé avec la quantité spécifiée. N'oubliez pas que inventory[itemName] += quantity fonctionnera à la fois pour les nouveaux articles et les articles existants, car la map initialise automatiquement les nouvelles entrées à 0.

Essayez vous-même

#include <iostream>
#include <map>
#include <string>
using namespace std;

int main() {
    // TODO: Write your code below
    map<string, int> inventory;
    inventory["Laptops"] = 15;
    inventory["Mice"] = 42;
    inventory["Keyboards"] = 28;
    inventory["Monitors"] = 12;
    
    cout << "Initial Inventory Setup:" << endl;
    for (const auto& pair : inventory) {
        cout << pair.first << ": " << pair.second << endl;
    }
    cout << "Inventory system is ready!" << endl;
    
    return 0;
}

Toutes les leçons de Logique et Flux