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

שני מספרים שונים נקראים "אחים" אם יש להם אותה ספרה הימנית ואותה ספרה השמאלית. לדוגמה: 123 ו-13 הם אחים, 34567 ו-357 הם אחים, 7 ו-7007 הם אחים.

סעיף א

כתבו פעולה המקבלת שני מספרים שלמים וחיוביים (גדולים מ-0) ובודקת אם הם "אחים". אם כן – הפעולה תחזיר ערך true, ולא – תחזיר false.

public static bool Brothers(int num1, int num2)

סעיף ב

נתונה פעולה what הבאה. הפעולה מקבלת שני מערכים המכילים מספרים שלמים וחיוביים. הפעולה משתמשת בפעולה brothers שתוארה בסעיף א':

public static boolean what(int[] a, int []b)
{
    for(int i=0; i < a.length; i++)
    {
        boolean flag = false;
        for(int k=0; k < b.length; k++)
        {
            if(brothers(a[i],b[k]))
            {
                flag = true;
            }
        }
        if(!flag) return false;
    }
    return true;
}

נתון מערך מספרים שלמים a: {123, 78002, 591, 13, 7, 25}

תנו דוגמה למערך b כך שזימון הפעולה what(a,b) יחזיר true.

סעיף ג

האם לכל זוג מערכים של מספרים שלמים חיוביים a ו-b תוצאת הזימון what(a,b) תהיה זהה לתוצאת הזימון what(b,a)? הסבירו את תשובתכם.

סעיף ד

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

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

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

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

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