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

סעיף א

נתונה הפעולה what המקבלת שתי מחרוזות s1 ו-s2:

public static boolean what(String s1, String s2)  {
    if(s1.equals(s2)) return false;
    for(int i=0; i<s1.length(); i++)
    {
        int pos = s2.indexOf(s1.charAt(i));
        if(pos == -1) return false;
        s2 = s2.substring(0,pos) + s2.substring(pos+1);
    }
    return true;
}
  1. עקבו בעזרת טבלת המעקב אחרי זימון what("HELLO","HELPME") ורשמו מה תהיה תוצאת הזימון.
  2. נתונה הטענה הבאה: אם זימון הפעולה what(s1, s2) מחזיר ערך true, גם זימון הפעולה what(s2, s1) יחזיר ערך true. האם הטענה נכונה? הסבירו את תשובתכם.
  3. מה מבצעת הפעולה what באופן כללי?
סעיף ב

נתונה הפעולה secret המקבלת מערך מחרוזות. הפעולה משתמשת בפעולה what:

public static boolean secret(String[] arr) {
    for (int i = 1; i<arr.length; i++)
    {
        if (!what(arr[i], arr[0]))
            return false;
    }
    return true;
}
  1. תנו דוגמה למערך arr בגודל שישה תאים הכולל מחרוזות שונות שעבורו הפעולה secret תחזיר ערך true.
  2. נתונה הטענה הבאה: אם זימון הפעולה secret(arr) מחזיר ערך true, המערך arr לא כולל זוג מחרוזות זהות. האם הטענה נכונה? הסבירו את תשובתכם.
  3. מה מבצעת הפעולה secret באופן כללי?
שאלות ותגובות על השאלה

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

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

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