アイテムの追加と更新
CoddyのC++ジャーニー「論理と制御フロー」セクションの一部 — レッスン 31/56。
チャレンジ
簡単新しいアイテムを追加したり、既存のアイテムの数量を更新したりする機能を実装して、在庫管理システムを拡張しましょう。このレッスンでは、マップが新しいエントリと既存のエントリの更新の両方を自動的に処理する方法を学びます。
以下の入力が提供されます:
- 実行する在庫操作の数を示す整数
n - その後、
n組の入力:- アイテム名を表す文字列
- 追加する数量を表す整数
プログラムは以下の手順で行う必要があります:
- 以下の初期在庫から開始します:
inventory["apples"] = 50;
inventory["bananas"] = 30;
inventory["oranges"] = 25; - 在庫操作の数を読み取ります
- 各操作について、アイテム名と数量を読み取ります
- 角括弧演算子を使用して、在庫マップ内のアイテムの現在の在庫に数量を追加します
- 各操作について、アイテム名とその新しい合計数量を示す確認メッセージを出力します
- すべての操作の後、すべてのアイテムとその更新された数量を示す最終的な在庫を出力します
以下の正確な出力形式を使用してください:
各在庫操作について:
Added [quantity] [item_name]. New total: [new_total]最終的な在庫:
Final Inventory:
[item1]: [quantity1]
[item2]: [quantity2]
[item3]: [quantity3]
...最終的な在庫は、アイテム名のアルファベット順に出力する必要があります。数量を追加するには角括弧演算子を使用してください。アイテムが既に存在する場合は現在の数量に加算され、新しいアイテムの場合は指定された数量で作成されます。マップは新しいエントリを自動的に 0 で初期化するため、inventory[itemName] += quantity は新規アイテムと既存アイテムの両方に対して機能することを覚えておいてください。
自分で試してみよう
#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;
}