סיכום – מפת גיבוב
חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-C# של Coddy. שיעור 51 מתוך 66.
אתגר
קלצרו מתודה בשם ProcessDictionary שמקבלת Dictionary<string, int> ומערך של פעולות כפרמטרים. המתודה צריכה לבצע את הפעולות האלה:
- אם הפעולה היא "GET key", הדפיסו את הערך של המפתח הזה או את "Not found" אם המפתח לא קיים
- אם הפעולה היא "CHECK key", הדפיסו "Exists" אם המפתח קיים, אחרת הדפיסו "Not found"
- אם הפעולה היא "MODIFY key value", בצעו את הפעולות הבאות:
- אם המפתח קיים והערך שלו זהה לערך שסופק, הגדילו את הערך שלו ב-1
- אם המפתח קיים אבל הערך שלו שונה, הסירו את המפתח
- אם המפתח לא קיים, הוסיפו אותו עם הערך שסופק
החזירו את ה-Dictionary המעודכן לאחר עיבוד כל הפעולות.
נסו בעצמכם
using System;
using System.Collections.Generic;
class Program
{
public static Dictionary<string, int> ProcessDictionary(Dictionary<string, int> data, string[] operations)
{
// כתבו כאן את הקוד שלכם
}
static void Main(string[] args)
{
// אתחלו מילון עם נתונים
Dictionary<string, int> data = new Dictionary<string, int>
{
{ "Apple", 10 },
{ "Banana", 5 },
{ "Orange", 7 }
};
// פעולות לדוגמה
string[] operations = new string[]
{
"GET Apple",
"CHECK Mango",
"MODIFY Banana 5",
"MODIFY Orange 8",
"MODIFY Mango 3"
};
Dictionary<string, int> result = ProcessDictionary(data, operations);
// הציגו את התוצאה
Console.WriteLine("Updated Dictionary:");
foreach (var item in result)
{
Console.WriteLine($"{item.Key}: {item.Value}");
}
}
}כל השיעורים ביחידה לוגיקה וזרימת תוכנית
1מערכים רב־ממדיים
יסודות מערכים דו־ממדייםהכרזה ואתחול של מערכים דו־ממדייםגישה לאיברי מערך דו־ממדילולאות מקוננות עם מערכים דו־ממדייםמערכים משונניםפעולות מטריצה נפוצותחזרה – מערכים רב־ממדיים7אופרטורים לוגיים מתקדמים
הערכה בקיצור דרךאופרטורים לוגיים מותניםקדימות אופרטוריםסיכום – אופרטורים מתקדמים2קבלת החלטות מתקדמת
תנאים מרוביםלוגיקה בוליאנית מורכבתהשוואה בין If ל-Switchהצהרות Switch מקוננותסיכום — קבלת החלטות מתקדמת5טיפול בחריגות
יסודות try-catchסוגי חריגותבלוקי catch מרוביםעבודה עם קבציםבלוק finallyשימוש ב-using לעומת try-finallyחריגות מותאמות אישיתסיכום – טיפול בשגיאות3שיפורים בלולאות
ביצועי לולאותאיטרציה במבנים מורכביםכל אחד מסוגי הלולאותרפקטורינג של לולאותסיכום – לולאות שעברו אופטימיזציה6טיפול בערכי Null
יסודות הפניה ל-Nullטיפוסי ערכים שניתנים ל-Nullדפוסי בדיקת Nullתכנות הגנתיסיכום – בטיחות מול Null9מפת גיבוב חלק 1
מהי מפת גיבוב?הכרזה על מפת גיבובבדיקה אם מפתח קייםגישה לערכיםשינוי מילוניםסיכום – מפת גיבובתרגלו בעצמכם: קומפיילר C# אונליין