Menu
Coddy logo textTech

Aggiunta e aggiornamento degli articoli

Fa parte della sezione Logica e flusso del percorso C++ di Coddy. Lezione 31 di 56.

challenge icon

Sfida

Facile

Estendi il tuo sistema di gestione delle scorte implementando la funzionalità per aggiungere nuovi articoli o aggiornare le quantità degli articoli esistenti. Questa lezione mostra come le mappe gestiscono automaticamente sia le nuove voci sia gli aggiornamenti di quelle esistenti.

Verranno forniti i seguenti input:

  • Un numero intero n che rappresenta il numero di operazioni sulle scorte da eseguire
  • Poi n coppie di input:
    • Una stringa che rappresenta il nome dell'articolo
    • Un numero intero che rappresenta la quantità da aggiungere

Il tuo programma dovrebbe:

  1. Iniziare con le seguenti scorte iniziali:
    inventory["apples"] = 50;
    inventory["bananas"] = 30;
    inventory["oranges"] = 25;
  2. Leggere il numero di operazioni sulle scorte
  3. Per ogni operazione, leggere il nome di un articolo e la quantità
  4. Aggiungere la quantità alle scorte attuali dell'articolo nella mappa delle scorte usando l'operatore tra parentesi quadre
  5. Stampare un messaggio di conferma per ogni operazione, mostrando il nome dell'articolo e la nuova quantità totale
  6. Dopo tutte le operazioni, stampare le scorte finali, mostrando tutti gli articoli e le relative quantità aggiornate

Usa il seguente formato di output esatto:

Per ogni operazione sulle scorte:

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

Scorte finali:

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

Le scorte finali devono essere stampate in ordine alfabetico per nome dell'articolo. Usa l'operatore tra parentesi quadre per aggiungere le quantità: se l'articolo esiste già, la quantità verrà sommata a quella attuale; se è un nuovo articolo, verrà creato con la quantità specificata. Ricorda che inventory[itemName] += quantity funziona sia per gli articoli nuovi sia per quelli esistenti, perché la mappa inizializza automaticamente le nuove voci a 0.

Provalo tu

#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;
}

Tutte le lezioni di Logica e flusso

Esercitati da solo: Compilatore C++ online