קורס פייתון למתחילים אונליין חינם - דווין קורס תכנותקורס פייתון למתחילים אונליין חינם - דווין קורס תכנות

תנאים

בסיום שיעור זה נדע לכתוב קוד שמכיל התניות שונות, נכיר יותר לעומק ביטויים בוליאנים.

תנאים

כמעט כל לוגיקה שנכניס לקוד שלנו מושטתת על תנאים, אם מתקיים א תעשה פעולה 1 אחרת תעשה פעולה 2 וכו.
לדוגמא - נרצה שהתוכנה שלנו תממש את הלוגיקה הבאה:

flowchart TD; INPUT[/קבל טמפרטורה מהחיישן/]--> IF_TEMP{הטמפרטורה גדולה מ-30?}; IF_TEMP -- אמת --> A[הדפס - 'חם היום, יש לשתות מים'] IF_TEMP -- שקר --> C[הדפס 'סיום'] A --> C

לטובת הפשטות נוותר על ״קליטת״ הקלט, כבר עשינו זאת בעבר, הפעם נסתפק בהגדרת משתנה פשוט.

1temperature = 35

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

כדי להגדיר תנאי בקוד, נשתמש במילה השמורה if בצירוף ביטוי בוליאני כלשהו.
לדוגמה:

1temperature = 35
2if temperature > 30:
3 print("it’s hot today!")
4 print("drink water!")
5print("Done")

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

1its hot today!
2drink water!
3Done

ומה יקרה עבור temperature = 30?
במקרה זה, התנאי לא מתקיים ולכן גוף התנאי לא יתבצע ולכן יודפס למסך Done בלבד.

1Done

כעת נרצה ״לטפל״ גם במקרה בו הטמפרטורה קטנה מ-25 מעלות:

flowchart TD; INPUT[/קבל טמפרטורה מהחיישן/]--> IF_TEMP{הטמפרטורה גדולה מ-30?}; IF_TEMP -- אמת --> A[הדפס - 'חם היום, יש לשתות מים'] IF_TEMP -- שקר --> IF_LOWER{הטמפרטורה קטנה מ-25?} IF_LOWER -- אמת --> D[הדפס 'מזג אוויר טוב עכשיו'] IF_LOWER -- שקר --> C[הדפס 'סיום'] A & D --> C

להוספת תנאים נוספים, נשתמש במילות השמורות elif ו else.

  1. elif - ״אחרת אם״.
  2. else - ״אחרת״.

1temperature = 20
2if temperature > 30:
3 print("its hot today!")
4 print("drink water!")
5elif temperature < 25:
6 print("nice weather")
7print("Done")

מה שיודפס הפעם זה:

1nice weather
2Done

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

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

1temperature = 20
2if temperature > 30:
3 print("its hot today!")
4 print("drink water!")
5elif temperature < 25:
6 print("nice weather")
7else:
8 print(“the temperature is between 25->30)
9print("Done")

מה שיודפס הפעם זה:

1the temperature is between 25->30
2Done

כעת שאתם מכירים משפטי תנאי, התחילו לבצע את המטלה.

הצהרת נגישות

© 2022 DevIn. All rights reserved