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

סעיף א

נתונה הפעולה secret() הבאה, המקבלת מחרוזת:

public static boolean secret(String str)
{
    int i = 0;
    while(i < str.length()/2)
    {
      if (str.charAt(i) < 'a' || str.charAt(i) > 'z')
        return false;
      i++;
    }
    if(str.length()%2!=0) i++;
    while(i < str.length())
    {
      if (str.charAt(i) < 'A' || str.charAt(i) > 'Z')
        return false;
      i++;
    }
    return true;
}
  1. תנו דוגמה למחרוזת באורך של שישה תווים שעבורה הפעולה secret תחזיר ערך true.
  2. נתונה הטענה הבאה: אם זימון הפעולה secret(str) מחזיר ערך true, במחרוזת str יש רק אותיות (גדולות או קטנות). האם הטענה נכונה? הסבירו את תשובתכם.
סעיף ב

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

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

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

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

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