divicidivici·איזיפס·פשוט להצליח

מה"ט אלגוריתמיקה ותכנות — קיץ 2024 מועד ב'

תאריך הבחינה: 28.10.2024

טופס המבחן המלא להורדה — ומפתח התשובות עם פתרון מפורט לכל שאלה, אונליין. פתחו שאלה למטה: בשאלה סגורה בוחרים תשובה, בשאלה פתוחה נפתח הפתרון המלא (כניסה מהירה וחינם).

פתרו את המבחן אונליין — בשפה שלכם:JavaC#

טופס מקורי (מה"ט) ↗

למגמת הנדסת תוכנה — מי שלומד ב-Java או ב-C#. הלומדים בפייתון ניגשים לשאלון נפרד.

✓ פתרון מלא לכל שאלה · ✓ הסברים מלאים וחומרי לימוד · ✓ ליווי מורה AI · ✓ התחלה חינם

פתרון מפורט לכל שאלה — לא רק התשובה: הסבר שלב-אחר-שלב וניתוח הטעויות הנפוצות.

שאלות לדוגמה מהמבחן — פתרו עכשיו

בשאלה סגורה בוחרים תשובה; בשאלה פתוחה פותחים את הפתרון המלא (כניסה מהירה וחינם). אלו 3 מתוך 32 שאלות המבחן — את כולן תוכלו לפתור אונליין.

שאלה 1

נתונה הפעולה הבאה המקבלת מספר שלם גדול מ-0:

public static int secret(int n)
{
    return secret(n, 1);
}
private static int secret(int n, int i)
{
    if(i == n)
        return 1;
    if(n % i == 0) return 1 + secret(n, i + 1);
    return secret(n, i+1);
}

public static int sod(int[] arr)
{
    return sod(arr, 0, arr.length-1);
}
private static int sod(int[] arr, int i, int j)
{
    if(i == j) return arr[i];
    if(secret(arr[i]) < secret(arr[j]))
        j--;
    else
        i++;
    return sod(arr, i, j);
}
סעיף א

עקבו אחרי הזימונים הבאים של הפעולה secret ורשמו מה תהיה התוצאה של כל זימון:

  1. secret(12)
  2. secret(7)
  3. secret(15)
סעיף ב

מה מבצעת הפעולה secret(int n) עבור מספר שלם גדול מ-0?

סעיף ג

עקבו אחרי זימון הפעולה sod(arr) עבור מערך הבא: int[] arr = {4,6,12,17,24,15,10}; ורשמו מה תהיה התוצאה של הזימון. יש להראות מעקב!

סעיף ד

מה מבצעת הפעולה sod עבור מערך של מספרים שלמים גדולים מ-0?

שאלה 2

כתבו קטע תוכנית שקולט מספרים שלמים. הקלט יסתיים כאשר ייקלט המספר 0. על התוכנית לחשב ולהדפיס:

  • את כמות המספרים השליליים שנקלטו
  • את ממוצע מספרים חיוביים שנקלטו. הערה: אם לא נקלט אף מספר חיובי יש להדפיס הודעה מתאימה.
שאלה 3

נתונות פעולות הבאות:

public static string One(string s, char ch, int k)
{
    string res  = "";
    while(k>0 && s.Length > 0)
    {
        if(s[0]) == ch)
        {
            k = k - 1;
        }
        else
        {
            res = res + s[0];
        }
        s = s.Substring(1);
    }
    return res + s;
}

public static bool Two(string[] arr, char ch)
{
    for(int i =1; i < arr.Length; i+=2)
    {
        if(arr[i] != (One(arr[i-1], ch, i)))
        {
            return false;
        }
    }
    return true;
}
סעיף א

מה תהיה תוצאת הזימון one(s1, 'A', 2) עבור מחרוזת s1="AABBAAD"? יש להראות מעקב!

סעיף ב

מה תהיה תוצאת הזימון one(s1, 'F', 3) עבור מחרוזת s1="AABBAAD"?

סעיף ג

נתונה מחרוזת s2="AABCCDDC". תנו דוגמה לפרמטרים k ו-ch כך שתוצאת הזימון one(s2, ch, k) תהיה מחרוזת s3="AABDDC".

סעיף ד

מה מבצעת הפעולה one?

סעיף ה

תנו דוגמה למערך arr של שמונה מחרוזות שונות זו מזו, שעבורו זימון הפעולה two(arr,'Z') יחזיר true.

הנושאים הרשמיים בבחינה 97104

לפי תוכנית הלימודים הרשמית של מה"ט (אלגוריתמיקה ותכנות) — אלו הנושאים שהבחינה נשענת עליהם:

המקור: תוכנית הלימודים הרשמית של מה"ט (משרד העבודה).

פתרו את המבחן המלא — עם משוב על כל תשובה

כל שאלות המבחן, פתרון מפורט, משוב אישי ומעקב התקדמות. בדיוק מה שצריך כדי לעבור.

התחילו לתרגל — חינם ←