Dodawanie i aktualizowanie produktów
Część sekcji Logika i przepływ programu ścieżki C++ w Coddy. Lekcja 31 z 56.
Wyzwanie
ŁatwyRozszerz swój system śledzenia zapasów, implementując funkcjonalność dodawania nowych produktów lub aktualizowania ilości istniejących produktów. Ta lekcja pokazuje, jak mapy automatycznie obsługują zarówno nowe wpisy, jak i aktualizacje istniejących.
Podane zostaną następujące dane wejściowe:
- Liczba całkowita
noznaczająca liczbę operacji na zapasach do wykonania - Następnie
npar danych wejściowych:- Ciąg znaków reprezentujący nazwę produktu
- Liczba całkowita reprezentująca ilość do dodania
Twój program powinien:
- Rozpocząć od następujących początkowych zapasów:
inventory["apples"] = 50;
inventory["bananas"] = 30;
inventory["oranges"] = 25; - Odczytać liczbę operacji na zapasach
- Dla każdej operacji odczytać nazwę produktu i ilość
- Dodać ilość do bieżącego stanu produktu w mapie zapasów za pomocą operatora nawiasów kwadratowych
- Wyświetlić komunikat potwierdzający każdą operację, zawierający nazwę produktu i jego nową łączną ilość
- Po wszystkich operacjach wyświetlić końcowe zapasy, pokazując wszystkie produkty i ich zaktualizowane ilości
Użyj następującego dokładnego formatu wyjściowego:
Dla każdej operacji na zapasach:
Added [quantity] [item_name]. New total: [new_total]Końcowe zapasy:
Final Inventory:
[item1]: [quantity1]
[item2]: [quantity2]
[item3]: [quantity3]
...Końcowe zapasy powinny być wyświetlane w kolejności alfabetycznej według nazwy produktu. Użyj operatora nawiasów kwadratowych, aby dodać ilości — jeśli produkt już istnieje, ilość zostanie dodana do bieżącej wartości; jeśli jest to nowy produkt, zostanie utworzony z podaną ilością. Pamiętaj, że inventory[itemName] += quantity zadziała zarówno dla nowych, jak i istniejących produktów, ponieważ mapa automatycznie inicjalizuje nowe wpisy wartością 0.
Spróbuj swoich sił
#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;
}Wszystkie lekcje w sekcji Logika i przepływ programu
1Wskaźniki i pamięć
Czym jest wskaźnik?Operator pobrania adresuOperator dereferencjiWskaźniki zeroweWskaźniki i tabliceDynamiczne zarządzanie pamięcią za pomocą „new”Zwalnianie pamięci za pomocą „delete”Podsumowanie — ćwiczenia ze wskaźnikami2Wektory (tablice dynamiczne)
Wprowadzenie do std::vectorTworzenie wektoraDodawanie elementówDostęp do elementówRozmiar wektoraIterowanie za pomocą pętli forPętla for oparta na zakresieUsuwanie elementówPodsumowanie — operacje na wektorach5Projekt: Narzędzie do zarządzania zapasami
Konfiguracja projektuDodawanie i aktualizowanie produktów3Projekt: narzędzie do listy zadań
Przegląd projektuDodawanie zadaniaPoćwicz samodzielnie: Kompilator C++ online