(c) Igor Kleiner • Python Lecture 2 Summary

מבוא לתכנות בפייתון

שיעור 2: קלט ממשתמש, טיפוסים, פקודות ואלגוריתמים

קבלת קלט והמרת טיפוסים

איך התוכנה מדברת עם המשתמש?

המרת טיפוסים (Casting)

למה זה חשוב?
פייתון שומרת מידע בסוגים (טיפוסים) שונים: מספרים, טקסט וכו'. לפעמים נצטרך לשנות את הטיפוס, למשל מטקסט למספר, כדי שנוכל לבצע פעולות מתמטיות.
פונקציות המרה
  • int(x) - המרה למספר שלם
  • float(x) - המרה למספר עשרוני
  • str(x) - המרה למחרוזת (טקסט)
שימו לב: המרה של מחרוזת עם נקודה לשלם (int("12.5")) תזרוק שגיאה, אבל המרה של מספר עשרוני לשלם (int(12.5)) תעבוד ותקצץ את השארית (יתקבל 12).

קבלת קלט (Input)

למה זה חשוב?
כדי שהתוכנית שלנו תהיה דינמית, אנו רוצים לאפשר למשתמש להכניס נתונים בזמן הריצה (למשל: מה הגיל שלך?).
הגדרת הפונקציה

הפונקציה input("Prompt") עוצרת את התוכנה וממתינה לקלט. היא תמיד מחזירה מחרוזת (str). לכן, לפני חישוב מספרי, חובה להמיר את הטיפוס!

x = input("Enter number: ")
print(x + 1) # ❌ שגיאה! חיבור מחרוזת ומספר
דוגמת קוד מלאה (קלט + המרה)
# קבלת טקסט מהמשתמש והמרתו מיד למספר שלם
age_str = input("Enter your age: ")
age_years = int(age_str)
print(f"Your age in months is: {age_years * 12}")
💡 טיפ: אם מצפים שהמשתמש יכניס שבר (למשל 12.5), יש להשתמש ב-float() במקום int() כדי למנוע שגיאה.
x = # (String)
>>> לחץ על פעולת המרה כדי לראות תוצאה...

פעולת השמה, ביטוי ואופרטור

איך מחשבים ואיך שומרים נתונים

ביטוי (Expression)

מה זה ביטוי?
סדרה של מספרים, משתנים, פעולות ופונקציות. המאפיין החשוב: פייתון יודע לחשב את הביטוי ולהחזיר ערך (למשל מספר, מחרוזת, או ערך בוליאני כמו True/False).
דוגמאות
3 + 5
len("hello")
10 > 5

פקודה (Statement) וההשמה (=)

מה זו פקודה?
חלק בקוד שאומר לפייתון לבצע פעולה מסוימת. פקודה לא מחזירה ערך שניתן להשתמש בו בתוך ביטוי. פעולת השמה (=) היא סוג של פקודה השומרת את הערך בזיכרון.
דוגמאות
x = 10
x = x + 2 # חוקי בתכנות, שומר ערך חדש
if x > 0:

אופרטורים מרכזיים

סוג סימנים משמעות / דוגמה
מתמטיים + - * / // % ** חיבור, חיסור, כפל, חילוק, חילוק שלם (//), שארית (%), חזקה (**).
סדר פעולות () סוגריים לשינוי סדר פעולות וקדימויות חשבון.
השוואה == != > < >= <= בדיקת שוויון (==), אי שוויון (!=) ויחסים (גדול/קטן מ-). התוצאה: בוליאנית.
לוגיים and or not חיבור תנאים: וגם, או, היפוך. (לדוגמה: True and False מניב False).

אלגוריתמים

מפת הדרכים לפני שכותבים קוד

הגדרה

אלגוריתם הוא תיאור מדויק ושלבי של פתרון לבעיה מסוימת. הוא מקבל קלט, מבצע עיבוד (חישובים), ומחזיר פלט.

מתכון מול אלגוריתם מול תוכנה
  • מתכון עוגה: מכיל שלבים, אך סובלני לאי-דיוקים ("קורט מלח"). מובן לבני אדם.
  • אלגוריתם: רעיון לוגי. חייב להיות מדויק וחד-משמעי, אך לא תלוי בשפת תכנות.
  • תוכנה: המימוש בפועל (Code) של האלגוריתם בשפת תכנות ספציפית (כמו פייתון) שהמחשב מסוגל להריץ.
מקרה בוחן: המרת טמפרטורה

בעיה: פתחו אלגוריתם שממיר טמפרטורה מצלזיוס (\(C\)) לפרנהייט (\(F\)).

\[F = C \cdot \frac{9}{5} + 32\]
  1. קבלת קלט מצלזיוס: C
  2. הכפלה ב-9, חילוק ב-5 והוספת 32.
  3. הצגת הפלט: F

מחשבון המרה (מימוש האלגוריתם)

=
Python Code:
celsius = float(input("Enter C: "))
fahrenheit = celsius * (9/5) + 32
print(f"{fahrenheit}")

שאלות בדיקה עצמית

בחן את עצמך על חומרי השיעור

מילון מושגים

סיכום מונחי המפתח

קלט (Input) input()

קבלת נתונים מהמשתמש בזמן ריצת התוכנה. מוחזר תמיד כמחרוזת טקסט.

המרת טיפוס (Casting) int(), float()

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

ביטוי (Expression) 3 + 5

קוד (מספרים, משתנים, פעולות) שניתן לחשב אותו ושתמיד מחזיר ערך.

פקודה (Statement) וההשמה (=) x = 10

הוראה למחשב לבצע פעולה (כמו עדכון זיכרון בהשמה). לא בהכרח מחזירה ערך שימושי.

אלגוריתם (Algorithm) Logic

סדרת הוראות מדויקות וחד-משמעיות לפתרון בעיה (קלט \(\rightarrow\) תהליך \(\rightarrow\) פלט).

שארית (Modulo) %

אופרטור המחזיר את שארית החלוקה. למשל: הפעולה \(5 \pmod 2\) (בקוד: 5 % 2) מניבה 1.