נתונה הפעולה why() המקבלת מחרוזת. נתונה הפעולה mystery המקבלת מערך מחרוזות ומשתמשת בפעולה why (ראו קוד בסעיף ב').
סעיף א
נתונה הפעולה why() הבאה המקבלת מחרוזת:
public static int why(String str)
{
int c = 0;
System.out.print("%");
for (int i = 0; i < str.length(); i++)
{
if (str.charAt(i) < 'A' || str.charAt(i) > 'Z')
{
System.out.print(i + " ");
}
else c++;
}
System.out.println("%");
return c;
}
- עקבו בעזרת טבלת המעקב אחרי זימון הפעולה why("AxyBZ3") ורשמו מה יהיה הפלט של הפעולה ומה היא תחזיר.
- תנו דוגמה למחרוזת באורך של שישה תווים לכל הפחות שעבורה הפעולה why תדפיס את המחרוזת הבאה: "%1 3 5 %".
- מה מבצעת הפעולה why באופן כללי?
סעיף ב
הפעולה why מסעיף א':
נתונה הפעולה mystery המקבלת מערך מחרוזות. הפעולה משתמשת בפעולה why:
public static boolean mystery(String[] arr)
{
for (int k = 0; k < arr.length; k++)
{
if (why(arr[k]) != k )
return false;
}
return true;
}
- תנו דוגמה למערך מחרוזות arr בגודל שישה תאים שעבורו הפעולה mystery תחזיר ערך true.
- מה יהיה הפלט של הפעולה עבור מערך שנתתם בסעיף ב'.1?
שאלות ותגובות על השאלה
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה לתכנות
שאלו כאן — ותקבלו מענה מוסמך.