(א)נתונה הפעולה why הבאה:
```java
public static int why(int[] a, int x, int k){
for(int i = k; i < a.length; i++)
if(a[i] == x)
return i;
return -1;
}
```
1. תנו דוגמה של מערך מספרים שלמים arr שעבורו זימון הפעולה why(arr, 5, 3) יחזיר ערך 5 וזימון הפעולה why(arr, 3, 5) יחזיר ערך (-1).
2. מה מבצעת הפעולה why באופן כללי?
(ב)נתונה הפעולה where הבאה:
```java
public static boolean where(int[] a, int[] b) {
int k = -1;
for(int i = 0; i < b.length; i++)
{
k = why(a, b[i], k+1);
if(k == -1)
return false;
}
return true;
}
```
נתונים שני המערכים הבאים:
```java
int[] a = {2,4,9,0,2,3};
int[] b = {2,4,0,9,3};
```
מהי תוצאת הזימון where(a, b)?
יש להראות מעקב אחרי ביצוע הפעולה. אין צורך במעקב אחרי הפעולה why.
(ג)נתונה הפעולה what הבאה:
```java
public static boolean what(int[] a, int[] b) {
int i = 0, j = 0;
while(i < a.length && j < b.length)
{
if(a[i] == b[j])
{
i++;
j++;
}
else
i++;
}
return j == b.length;
}
```
האם הפעולה what שקולה (מבצעת בדיוק אותו הדבר) לפעולה where? אם כן – הסבירו מה מבצעות שתי הפעולות באופן כללי, ולא – תנו דוגמה של שני המערכים a ו-b שעבורם תוצאות הזימונים what(a,b) ו-where(a,b) יהיו שונות.

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

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

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

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

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

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

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