Menu
Coddy logo textTech

הוספה ועדכון של פריטים

חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-C++ של Coddy. שיעור 31 מתוך 56.

challenge icon

אתגר

קל

הרחב את מערכת המעקב אחר המלאי שלך על ידי מימוש היכולת להוסיף פריטים חדשים או לעדכן את הכמויות של פריטים קיימים. השיעור הזה מדגים כיצד מפות מטפלות באופן אוטומטי הן ברשומות חדשות והן בעדכונים לרשומות קיימות.

הקלטים הבאים יסופקו:

  • מספר שלם n המייצג את מספר פעולות המלאי שיש לבצע
  • לאחר מכן n זוגות של ערכי קלט:
    • מחרוזת המייצגת את שם הפריט
    • מספר שלם המייצג את הכמות שיש להוסיף

התוכנית שלך צריכה:

  1. להתחיל עם המלאי ההתחלתי הבא:
    inventory["apples"] = 50;
    inventory["bananas"] = 30;
    inventory["oranges"] = 25;
  2. לקרוא את מספר פעולות המלאי
  3. לקרוא שם פריט וכמות עבור כל פעולה
  4. להוסיף את הכמות למלאי הנוכחי של הפריט במפת המלאי באמצעות אופרטור הסוגריים המרובעים
  5. להדפיס הודעת אישור עבור כל פעולה, המציגה את שם הפריט ואת הכמות הכוללת החדשה שלו
  6. לאחר כל הפעולות, להדפיס את המלאי הסופי, המציג את כל הפריטים ואת הכמויות המעודכנות שלהם

יש להשתמש בפורמט הפלט המדויק הבא:

עבור כל פעולת מלאי:

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

המלאי הסופי:

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

יש להדפיס את המלאי הסופי בסדר אלפביתי לפי שם הפריט. יש להשתמש באופרטור הסוגריים המרובעים כדי להוסיף כמויות — אם הפריט כבר קיים, הכמות תתווסף לכמות הנוכחית; אם מדובר בפריט חדש, הוא ייווצר עם הכמות שצוינה. חשוב לזכור ש-inventory[itemName] += quantity יעבוד גם עבור פריטים חדשים וגם עבור פריטים קיימים, משום שהמפה מאתחלת באופן אוטומטי רשומות חדשות עם 0.

נסו בעצמכם

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

כל השיעורים ביחידה לוגיקה וזרימת תוכנית

תרגלו בעצמכם: קומפיילר C++ אונליין