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

נתונה הפונקציה what המקבלת רשימה של מספרים שלמים חיוביים arr ופרמטר נוסף exp. הפרמטר exp יכול לקבל ערכים שהם חזקות של 10 (כגון 1, 10, 100, 1000...).

def what(arr, exp):
    n = len(arr)
    output = [0] * n
    count = [0] * 10
    for i in range(n):
        digit = (arr[i] // exp) % 10
        count[digit] += 1
    # **** סיום שלב 1 ****
    for i in range(1, 10):
        count[i] += count[i - 1]
    # **** סיום שלב 2 ****
    for i in range(n - 1, -1, -1):
        digit = (arr[i] // exp) % 10
        output[count[digit] - 1] = arr[i]
        count[digit] -= 1
    # **** סיום שלב 3 ****
    return output
סעיף א

נתונה הרשימה arr = [23, 15, 9, 71, 25]. עקבו אחרי זימון הפונקציה out1 = what(arr, 1) ורשמו מה יהיה תוכן הרשימה out1 אחרי זימון הפונקציה. יש להראות את תוכן הרשימה count אחרי סיום של כל אחד מהשלבים 1–3.

סעיף ב

נתונה הרשימה arr = [23, 15, 9, 71, 25]. עקבו אחרי זימון הפונקציה out2 = what(arr, 10) ורשמו מה יהיה תוכן הרשימה out2 אחרי זימון הפונקציה.

סעיף ג

מה מבצעת הפונקציה what באופן כללי?

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

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

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

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