נתונה הפעולה secret הבאה המקבלת מספר שלם גדול מ-0:
נתונה הפעולה secret הבאה המקבלת מספר שלם גדול מ-0:
def secret(n):
return real_secret(n, 1)
def real_secret(n, k):
if k == n:
return 1
if n % k == 0:
return 1 + real_secret(n, k+1)
return real_secret(n, k+1)
סעיף א
עקבו אחרי הזימונים הבאים של הפעולה secret ורשמו מה תהיה התוצאה של כל זימון:
- secret(12)
- secret(7)
- secret(15)
סעיף ב
מה מבצעת הפעולה secret(n) עבור מספר שלם גדול מ-0?
סעיף ג
נתונה הפעולה sod המקבלת רשימה של מספרים שלמים גדולים מ-0:
def sod(arr):
return real_sod(arr, 0, len(arr)-1)
def real_sod(arr, i, j):
if(i == j):
return arr[i]
if secret(arr[i]) < secret(arr[j]):
j = j - 1
else:
i = i + 1
return real_sod(arr, i, j)
עקבו אחרי זימון הפעולה sod(arr) עבור הרשימה הבאה:
arr = [4,6,12,17,24,15,10]
ורשמו מה תהיה התוצאה של הזימון. יש להראות מעקב!
סעיף ד
מה מבצעת הפעולה sod עבור רשימה של מספרים שלמים גדולים מ-0?
שאלות ותגובות על השאלה
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה לתכנות
שאלו כאן — ותקבלו מענה מוסמך.