נתונות שלוש הפעולות הבאות:
public static int One ( int[] arr ){
int res = -1;
for (int k = 0; k < arr.Length-1 && res == -1; k++)
if (arr[k] > arr[k+1])
res = k;
return res;
}
public static void Two ( int[] arr, int k ){
int temp = arr[k];
arr[k] = arr[k+1];
arr[k+1] = temp;
}
public static void Three ( int[] arr ){
int k = One( arr );
while (k != -1)
{
Two( arr, k );
k = One( arr );
}
}
(א)עקבו בעזרת טבלת המעקב ורשמו מה יחזיר זימון הפעולה `One(arrA)` עבור המערך:
```csharp
int[] arrA = {8, 9, 20, 17, -3, 1, 4};
```
```csharp
int[] arrA = {8, 9, 20, 17, -3, 1, 4};
```
(ב)מה יחזיר זימון הפעולה `One(arrB)` עבור המערך:
```csharp
int[] arrB = {-5, -3, 0, 11, 13, 15, 18};
```
```csharp
int[] arrB = {-5, -3, 0, 11, 13, 15, 18};
```
(ג)תנו דוגמה למערך arrC בגודל שישה תאים שעבורו הזימון `One(arrC)` יחזיר 4.
(ד)נתון מערך `int[] arrD = {7, 9, 2, 8, 3, 1}`.
עקבו בעזרת טבלת המעקב ורשמו מה יהיה התוכן של המערך אחרי זימון הפעולה `Three(arrD)`.
אין צורך להראות מעקב אחרי הפעולות One ו-Two.
עקבו בעזרת טבלת המעקב ורשמו מה יהיה התוכן של המערך אחרי זימון הפעולה `Three(arrD)`.
אין צורך להראות מעקב אחרי הפעולות One ו-Two.
(ה)מה מבצעת הפעולה `Three(arr)` באופן כללי? הסבירו את תשובתכם.
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה בטיחות
שאלו כאן — ותקבלו מענה מוסמך.
רוצים לתרגל אלפי שאלות נוספות?
המשיכו לתרגול מלא עם משוב אישי ←מבחני מה"ט אמיתיים · משוב מיידי · וידאו לכל נושא · מעקב התקדמות