(א)נתונה הפעולה what המקבלת מספר שלם חיובי n:

```java
public static boolean what(int n) {
if (n < 10) return true;
return what(n / 10, n % 10);
}
private static boolean what(int n, int k) {
if (n == 0) return true;
if (n % 10 <= k) return false;
return what(n / 10, n % 10);
}
```

1. מה תהיה תוצאת זימון הפעולה `what(8652)`? יש להראות מעקב.
2. תנו דוגמה למספר תלת-ספרתי n שעבורו תוצאת זימון הפעולה `what(n)` תהיה true.
3. מה מבצעת הפעולה `what(n)` באופן כללי עבור מספר שלם חיובי n?
(ב)נתונה הפעולה secret המקבלת מערך מספרים שלמים:

```java
public static void secret(int[] a) {
secret(a, 0, a.length-1);
}
private static void secret(int[] a, int low, int high) {
if (low < high) {
if (what(a[low])) {
secret(a, low + 1, high);
} else if (!what(a[high])) {
secret(a, low, high - 1);
} else {
int temp = a[low];
a[low] = a[high];
a[high] = temp;
secret(a, low + 1, high - 1);
}
}
}
```

1. עקבו אחרי זימון הפעולה `secret(a)` עבור המערך הבא:
`int[] a = {17, 863, 19, 542, 123,542};`
רשמו מה תהיה התוצאה של הזימון. יש להראות מעקב.
2. תנו דוגמה של מערך b הכולל חמישה מספרים תלת-ספרתיים, כך שזימון הפעולה `secret(b)` לא יגרום לשינוי במערך.
3. תנו דוגמה של מערך c הכולל חמישה מספרים תלת-ספרתיים, כך שזימון הפעולה `secret(c)` יגרום להפיכת סדר איברים במערך.
4. מה מבצעת הפעולה secret באופן כללי עבור מערך של מספרים שלמים חיוביים?

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

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

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

רוצים לתרגל אלפי שאלות נוספות?

המשיכו לתרגול מלא עם משוב אישי ←

מבחני מה"ט אמיתיים · משוב מיידי · וידאו לכל נושא · מעקב התקדמות

המשיכו לתרגול מלא ←