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

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

סעיף א

כתבו פונקציה המקבלת מספר שלם וחיובי ובודקת אם הוא ראשוני. אם כן – הפונקציה תחזיר ערך True, ואם לא – הפונקציה תחזיר ערך False.

def is_primary(num):

סעיף ב

השערת גולדבך (Goldbach) היא השערה בתורת המספרים שלפיה אפשר להציג כל מספר זוגי כסכום של שני מספרים ראשוניים. לדוגמה: 8=3+5 (או 1+7), 16=5+11 (או 3+13), 24=5+19 (או 7+17 או 1+23 או 11+13), 46=3+43 (או 5+41 או 23+23).

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

def count_primary_pairs(num):

סעיף ג

כתבו פונקציה המקבלת מספר שלם זוגי num. הפונקציה תחזיר (רשימה list) של כל זוגות המספרים הראשוניים שסכומם שווה לו. כל זוג יוצג כטאפל (tuple) או כרשימה קטנה יותר בתוך הרשימה הגדולה.

לדוגמה: עבור המספר 42 הפונקציה תחזיר את הרשימה הזאת: [(1, 41), (5, 37), (11, 31), (13, 29), (19, 23)] כי: 1+41=42, 5+37=42, 11+31=42, 13+29=42, 19+23=42.

def all_primary_pairs(num):

סעיף ד

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

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

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

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

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