Menu
Coddy logo textTech

סיכום – ניהול מחסן

חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-Java של Coddy. שיעור 20 מתוך 59.

challenge icon

אתגר

קל

צרו מתודה בשם <strong>manageWarehouse</strong> שמקבלת שני ארגומנטים:

  1. מפת HashMap בשם <strong>warehouse</strong> שבה:
    • המפתחות מייצגים שמות מוצרים (String).
    • הערכים מייצגים כמויות (Integer).
  2. רשימת פעולות (<strong>String[] operations</strong>) שבה כל מחרוזת היא באחד מהפורמטים הבאים:
    • "ADD product quantity" → מוסיפה את הכמות הנתונה למוצר הקיים (או יוצרת אותו אם הוא לא קיים).
    • "REMOVE product quantity" → מפחיתה את כמות המוצר. אם הכמות מגיעה ל0 או פחות, הסירו את המוצר.
    • "CHECK product" → מדפיסה true אם המוצר קיים, אחרת false.
    • "PRINT" → מדפיסה את כל המוצרים ואת הכמויות שלהם בפורמט:

      Product: Laptop, Quantity: 10
      Product: Mouse, Quantity: 50

כדי להמיר String ל-Integer, משתמשים ב:

String quantityString = "25";  
int quantity = Integer.valueOf(quantityString);  
System.out.println(quantity + 5); // Output: 30

Integer.valueOf() מבטיחה שנקבל מספר שלם שנוכל להשתמש בו בחישובים.

נסו בעצמכם

import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;

public class Main {
    public static void manageWarehouse(HashMap<String, Integer> warehouse, String[] operations) {
        // כתבו את הקוד שלכם כאן
    }

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String warehouseString = scanner.nextLine();
        String operationsString = scanner.nextLine();

        // המירו את מחרוזת ה-JSON ל-HashMap
        Type mapType = new TypeToken<HashMap<String, Integer>>(){}.getType();
        HashMap<String, Integer> warehouse = new Gson().fromJson(warehouseString, mapType);

        // המירו את מחרוזת ה-JSON ל-Array
        String[] operations = new Gson().fromJson(operationsString, String[].class);

        manageWarehouse(warehouse, operations);
    }
}

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

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