תרגול מסכם: רשימות

תרגול מסכם: רשימות#

מימוש “בעית ניו-זילנד”#

כעת נראה כיצד לממש את הפתרון ל”בעית ניו-זילנד” בפייתון:

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

start = 10000
spend_lst = [1200, 900, 354, 1300, 550, 620, 550, 715]
total = sum(spend_lst)
print("Total:", total)
money_left = start - total
print("You have", money_left, "dollars")
average = total / len(spend_lst)
print("The average per week:", average)
weeks_left = money_left / average
print("You have approx.", weeks_left, "weeks left to travel")
Total: 6189
You have 3811 dollars
The average per week: 773.625
You have approx. 4.926159314913557 weeks left to travel

בחנו את עצמכם

בקוד שלפניכם מופיעה הרשימה grades ובה ציוני סטודנטים בקורס מסוים. אנחנו רוצים לבדוק האם יש תלמיד שציונו בקורס שווה בדיוק לממוצע הציונים (במילים אחרות - האם ממוצע הציונים מופיע ברשימה grades). עליכם לכתוב קוד שמבצע את הבדיקה הזו ומדפיס את התוצאה למסך.

הנחיות:

  1. תחילה חשבו את סכום כל הציונים ושמרו אותו במשתנה כלשהו (תנו למשתנה זה שם כרצונכם).

  2. חשבו את אורך הרשימה ושמרו אותו במשתנה נוסף.

  3. חשבו את ממוצע הציונים (ע”י חלוקת סכום הציונים באורך הרשימה, כלומר, חלוקת שני המשתנים שיצרתם בסעיפים הקודמים), וגם אותו שמרו במשתנה שלישי.

  4. לבסוף, אם הממוצע נמצא ברשימה - הדפיסו True, ואם לא - הדפיסו False. תזכורת - הביטוי x in L משוערך ל-True אם האיבר x נמצא ברשימה L, ול-False אם לא).

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

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

# Change this list - try different inputs
grades = [81, 70, 75, 96, 99, 100, 87, 80, 100]

# Write your solution here: