🔢 שיעור 1: המשחק המספרים

⏱️ משך: 1 שעה | 🎯 מטרה: משתנים, קלט/פלט, וחישובים

🎯 מטרות השיעור

📦 חלק 1: משתנים - קופסאות למידע (10 דקות)

מה זה משתנה?

משתנה = מקום באזיכרון שמאחסן ערך
אנלוגיה: כמו קופסה עם תווית - בקופסה יש תוכן, והתווית זה השם

טיפוסי נתונים בסיסיים:

טיפוס תיאור דוגמה
int מספר שלם 5, -10, 1000
double מספר עשרוני 3.14, -2.5, 0.001
string טקסט "שלום", "C#"
bool אמת/שקר true, false
char תו בודד 'A', 'ב', '7'

הכרזה על משתנים:

using System;

namespace VariablesDemo
{
    class Program
    {
        static void Main(string[] args)
        {
            // הכרזה ואתחול
            int age = 15;
            double height = 1.65;
            string name = "שרה";
            bool isStudent = true;
            
            // הדפסה
            Console.WriteLine(age);        // 15
            Console.WriteLine(name);       // שרה
            
            // שינוי ערך
            age = 16;
            Console.WriteLine(age);        // 16
            
            // הדפסה עם טקסט
            Console.WriteLine("הגיל שלי: " + age);
            
            // אינטרפולציה (דרך מומלצת!)
            Console.WriteLine($"שלום, אני {name} ואני בת {age}");
        }
    }
}

⌨️ חלק 2: קלט מהמשתמש (15 דקות)

קליטת טקסט:

using System;

namespace InputDemo
{
    class Program
    {
        static void Main(string[] args)
        {
            // בקשה להזנת שם
            Console.WriteLine("מה שמך?");
            
            // קליטת קלט (תמיד מחרוזת!)
            string userName = Console.ReadLine();
            
            // הדפסה
            Console.WriteLine($"שלום {userName}!");
        }
    }
}

קליטת מספרים:

// ReadLine מחזיר תמיד string, צריך להמיר!

// המרה ל-int
Console.WriteLine("מה הגיל שלך?");
int age = int.Parse(Console.ReadLine());

// המרה ל-double
Console.WriteLine("מה הגובה שלך?");
double height = double.Parse(Console.ReadLine());

Console.WriteLine($"אתה בן {age} וגובהך {height}");
💡 חשוב לזכור:
  • Console.ReadLine() תמיד מחזיר string
  • צריך להמיר ידנית למספר עם int.Parse() או double.Parse()
  • אם המשתמש יזין לא-מספר, התוכנית תקרוס!

➕ חלק 3: פעולות חשבון (15 דקות)

אופרטורים אריתמטיים:

אופרטור פעולה דוגמה תוצאה
+ חיבור 5 + 3 8
- חיסור 5 - 3 2
* כפל 5 * 3 15
/ חילוק 10 / 3 3 (שלמים!) או 3.333... (double)
% שארית 10 % 3 1
using System;

namespace MathDemo
{
    class Program
    {
        static void Main(string[] args)
        {
            int a = 10;
            int b = 3;
            
            Console.WriteLine($"חיבור: {a + b}");      // 13
            Console.WriteLine($"חיסור: {a - b}");      // 7
            Console.WriteLine($"כפל: {a * b}");         // 30
            Console.WriteLine($"חילוק: {a / b}");      // 3 (int)
            Console.WriteLine($"שארית: {a % b}");      // 1
            
            // חילוק עשרוני
            double result = (double)a / b;
            Console.WriteLine($"חילוק עשרוני: {result}");  // 3.333...
            
            // סדר פעולות (כמו במתמטיקה!)
            int calc = 5 + 3 * 2;         // 11 (לא 16!)
            int calc2 = (5 + 3) * 2;      // 16
        }
    }
}
⚠️ חילוק של מספרים שלמים:
10 / 3 מחזיר 3 (לא 3.33!)
כדי לקבל תוצאה עשרונית: (double)10 / 3

✍️ תרגולים (40 דקות)

תרגיל 1: מחשבון אישי (10 דקות)

משימה: כתבו תוכנית שמבקשת 2 מספרים ומדפיסה:

  • חיבור
  • חיסור
  • כפל
  • חילוק

דוגמת פלט:

הזן מספר ראשון: 10
הזן מספר שני: 3
חיבור: 13
חיסור: 7
כפל: 30
חילוק: 3.33
💡 רמז
int num1 = int.Parse(Console.ReadLine());
int num2 = int.Parse(Console.ReadLine());
double division = (double)num1 / num2;

תרגיל 2: המרת טמפרטורות (10 דקות)

משימה: תוכנית שממירה צלזיוס לפרנהייט

נוסחה: F = C × 9/5 + 32

דוגמת פלט:

הזן טמפרטורה בצלזיוס: 25
25°C = 77°F

תרגיל 3: מחשבון ממוצע ציונים (15 דקות)

משימה: תוכנית שמקבלת 3 ציונים ומחשבת ממוצע

  • אם הממוצע מעל 60 - הדפיסו "עברת!"
  • אחרת - הדפיסו "נכשלת"

דוגמת פלט:

הזן ציון 1: 85
הזן ציון 2: 92
הזן ציון 3: 78
הממוצע שלך: 85
עברת!
💡 רמז
double average = (grade1 + grade2 + grade3) / 3.0;
if (average >= 60)
{
    Console.WriteLine("עברת!");
}

🏆 אתגר: מחשבון טיפ במסעדה (5 דקות)

משימה:

  • קלטו סכום חשבון
  • קלטו אחוז שירות (10, 15, 20)
  • חשבו וה הדפיסו: סכום טיפ + סכום כולל

דוגמת פלט:

סכום החשבון: 200
אחוז שירות: 15
טיפ: 30 ש"ח
סה"כ לתשלום: 230 ש"ח

📝 סיכום

✅ מה למדנו היום?

  • משתנים: int, double, string, bool
  • קלט: Console.ReadLine()
  • המרות: int.Parse(), double.Parse()
  • חישובים: +, -, *, /, %
  • אינטרפולציה: $"טקסט {variable}"