Rimozione delle scorte
Fa parte della sezione Logica e flusso del percorso C++ di Coddy. Lezione 33 di 56.
Sfida
FacileCompleta il tuo sistema di gestione delle scorte implementando la funzionalità per rimuovere scorte dagli articoli esistenti. Questa lezione illustra come diminuire in sicurezza le quantità in inventario, impedendo che i livelli delle scorte scendano sotto zero e gestendo gli articoli che non esistono nell'inventario.
Inizia con il seguente inventario iniziale:
apples: 50bananas: 30oranges: 25
Verranno forniti i seguenti input:
- Un intero
nche rappresenta il numero di operazioni di rimozione delle scorte da eseguire - Quindi
ncoppie di input:- Una stringa che rappresenta il nome dell'articolo
- Un intero che rappresenta la quantità da rimuovere
Il tuo programma dovrebbe:
- Iniziare con l'inventario iniziale elencato sopra
- Leggere il numero di operazioni di rimozione delle scorte
- Per ogni operazione, leggere il nome di un articolo e la quantità da rimuovere
- Usare il metodo
.count()per verificare se l'articolo esiste nella mappa dell'inventario - Se l'articolo non esiste, stampare un messaggio di errore
- Se l'articolo esiste, verificare se rimuovere la quantità farebbe diventare negativa la giacenza
- Se la rimozione comporterebbe una giacenza negativa, stampare un messaggio di errore
- Se la rimozione è valida, sottrarre la quantità dalla giacenza attuale e stampare un messaggio di conferma
- Dopo tutte le operazioni, stampare l'inventario finale con tutti gli articoli e le quantità aggiornate
Usa il seguente formato di output esatto:
Per la rimozione riuscita delle scorte:
Removed [quantity] [item_name]. New total: [new_total]Per gli articoli non trovati:
Error: [item_name] not found in inventoryPer le scorte insufficienti:
Error: Cannot remove [quantity] [item_name]. Only [current_stock] in stockInventario finale:
Final Inventory:
[item1]: [quantity1]
[item2]: [quantity2]
[item3]: [quantity3]
...L'inventario finale dovrebbe essere stampato in ordine alfabetico in base al nome dell'articolo. Usa inventory.count(itemName) per verificare se un articolo esiste prima di tentare di rimuovere le scorte. Sottrai la quantità dall'inventario solo se l'articolo esiste e la giacenza attuale è maggiore o uguale alla quantità da rimuovere. Usa inventory[itemName] -= quantity per sottrarre la quantità dalle scorte esistenti.
Provalo tu
#include <iostream>
#include <map>
#include <string>
using namespace std;
int main() {
// Initialize inventory with existing items
map<string, int> inventory;
inventory["apples"] = 50;
inventory["bananas"] = 30;
inventory["oranges"] = 25;
inventory["grapes"] = 40;
int n;
cin >> n;
for (int i = 0; i < n; i++) {
string itemName;
cin >> itemName;
if (inventory.count(itemName)) {
cout << itemName << ": " << inventory[itemName] << " in stock" << endl;
} else {
cout << itemName << ": Item not found" << endl;
}
}
cout << "Total items in inventory: " << inventory.size() << endl;
return 0;
}Tutte le lezioni di Logica e flusso
1Puntatori e memoria
Che cos'è un puntatore?Operatore indirizzoOperatore di dereferenziazionePuntatori nulliPuntatori e arrayMemoria dinamica con 'new'Liberare la memoria con 'delete'Riepilogo - Esercizi sui puntatori2Vettori (array dinamici)
Introduzione a std::vectorCreare un vettoreAggiungere elementiAccedere agli elementiDimensione del vettoreIterare con un ciclo forCiclo for basato su intervalloRimuovere elementiRiepilogo - Operazioni sui vettori5Progetto: strumento per l’inventario
Configurazione del progettoAggiunta e aggiornamento degli articoli3Progetto: Strumento per l’elenco delle attività
Panoramica del progettoAggiungere un’attivitàEsercitati da solo: Compilatore C++ online