אתם מתרגלים שאלה מתוך מה"ט אלגוריתמיקה ותכנות בפייתון — הנדסאי תוכנהמבחן 2026 · אביב מועד א · שאלה 8כל שאלות המבחן ←
תכנות בסיסימערכים דו-ממדיים

נגדיר "פרח" בתוך מטריצה (רשימה של רשימות) כך:

  • ה"פרח" מורכב מחמישה איברים בתת-מטריצה בגודל 3X3. האיבר המרכזי בתת-המטריצה הוא "לב הפרח". ארבעת האיברים הצמודים לו בפינותיו (אלכסוניים) הם "עלי הכותרת" של ה"פרח".
  • הערך של "לב הפרח" שווה לסכום "עלי הכותרת" של הפרח.
  • בכל פרח צריכים להיות בדיוק ארבעה "עלי כותרת".
סעיף א

כתבו פונקציה המקבלת מטריצה של מספרים שלמים arr ושני מספרים שלמים נוספים המציינים מיקום איבר במטריצה: row (שורה) ו-col (עמודה). הפונקציה תבדוק אם איבר זה הוא "לב הפרח". אם כן – הפונקציה תחזיר True, ולא – הפונקציה תחזיר False. כותרת הפונקציה: def is_flower(arr, row, col)

סעיף ב

כתבו פונקציה המקבלת מטריצה של מספרים שלמים arr ומחזירה רשימה חדשה הכוללת ערכים של כל "לב הפרח" הקיים במטריצה arr. אם אין אף "פרח", הפונקציה תחזיר רשימה ריקה. כותרת הפונקציה: def flower_hearts(arr)

סעיף ג

מהי סיבוכיות זמן הריצה של כל אחת הפונקציות שכתבתם? הסבירו את תשובתכם.

שאלות ותגובות על השאלה

🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה לתכנות

שאלו כאן — ותקבלו מענה מוסמך.

🎓 מרצה לתכנות עונה כאן — תקבלו מענה מקצועי