(א)נתונה הפעולה why הבאה:
```java
public static Node<Integer> why(Node<Integer> chain, boolean flag)
{
int count = 0;
Node<Integer> p = chain;
while(p != null)
{
int x = p.getValue();
boolean f = (x % 2 ==0);
if( f == flag)
count ++;
p = p.getNext();
}
return new Node<Integer>(count);
}
```

נתונה שרשרת חוליות הבאה:

`chain → 10 → 7 → 14 → 5 → 7 → 2 → 4`

מה תחזיר הפעולה `why(chain, false)`? יש להראות מעקב אחרי ביצוע הפעולה why.
(ב)נתונה הפעולה what הבאה:
```java
public static void what(Node<Integer> chain)
{
Node<Integer> p = chain;
Node<Integer> temp;
while (p != null)
{
if(p.getValue()%2 ==0)
temp = why(p.getNext(), false);
else
temp = why(p.getNext(), true);
temp.setNext(p.getNext());
p.setNext(temp);
p = temp.getNext();
}
}
```

עקבו אחרי ביצוע זימון הפעולה `what(chain)` ורשמו איך תראה השרשרת אחרי זימון הפעולה.
יש להראות מעקב אחרי ביצוע הפעולה what, אין צורך במעקב אחרי why.
(ג)מה מבצעות הפעולות `what(chain)` ו-`why(chain,flag)` באופן כללי?

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

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

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

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

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

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

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