נתונות ארבע פעולות:
נתונות ארבע פעולות:
def one(num):
return two(num, 0, 0)
def two(num, s, c):
if num == 0:
return s / c if c != 0 else 0.0
return two(num // 10, s + (num % 10), c + 1)
def three(arr, p):
n = len(arr)
temp = [0] * n
four(arr, temp, 0, 0, n - 1, p)
return temp
def four(arr, temp, k, left, right, p):
if k < len(arr):
if one(arr[k]) > one(arr[p]):
temp[right] = arr[k]
four(arr, temp, k + 1, left, right - 1, p)
else:
temp[left] = arr[k]
four(arr, temp, k + 1, left + 1, right, p)
סעיף א(1)
עקבו אחרי זימון הפונקציה one(6123) ורשמו את תוצאת הזימון! יש להראות מעקב.
סעיף א(2)
תנו דוגמה של מספר שלם וחיובי גדול מ-100 שעבורו הפונקציה one תחזיר ערך חמש.
סעיף א(3)
מה מבצעת הפונקציה one(num) עבור מספר שלם num?
סעיף ב(1)
נתונה הרשימה a = [24, 126, 9, 35, 2684, 8941]. עקבו אחרי זימון הפונקציה three(a, 3) ורשמו מה תהיה תוצאת הזימון. יש להראות מעקב אחרי ביצוע הפונקציה three, אין צורך להראות מעקב אחרי הפעולות one ו-two.
סעיף ב(2)
האם קיים ערך p שעבורו זימון הפונקציה three(a, p) יגרום לשגיאה? הסבירו את תשובתכם.
סעיף ב(3)
תנו דוגמה לרשימה arr בגודל שישה איברים כך שזימון הפונקציה three(arr, p) יחזיר רשימה זהה ל-arr עבור כל ערך p תקין. אם הדבר אינו אפשרי הסבירו מדוע.
סעיף ב(4)
מה מבצעת הפונקציה three(a, p) עבור רשימה של מספרים שלמים arr וערך שלם p?
שאלות ותגובות על השאלה
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה לתכנות
שאלו כאן — ותקבלו מענה מוסמך.