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

נתונה הפעולה why הבאה המקבלת מחרוזת:

public static void why(String str)
{
    int i = 0;
    int j = str.length()-1;
    while(i <= j)
    {
      if(str.charAt(i) < 'A' || str.charAt(i) > 'Z')
        i++;
      else if(str.charAt(j)< 'A' || str.charAt(j) > 'Z')
        j--;
      else
      {
        String temp = str.substring(i,j+1);
        System.out.println(temp);
        i++; // (*)
        j--; // (**)
      }
    }
}
סעיף א

עקבו בעזרת טבלת מעקב אחרי זימון הפעולה why(str) עבור המחרוזת str="aBbCdDeFggHi3" ורשמו מה יהיה הפלט של הפעולה.

סעיף ב

הפקודה i++; המסומנת ב-(*) נמחקה. מה יהיה הפלט עבור זימון why(str) אחרי שינוי הפעולה?

סעיף ג

אחרי השינוי שהתבצע בסעיף ב', נמחקה גם הפקודה j--; המסומנת ב-(**). הסבירו מה תהיה התוצאה של שינוי זה.

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

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

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

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