נתונות שתי הפעולות הבאות:
נתונות שתי הפעולות הבאות:
public static void What(int[] arr, int a, int b) {
int temp = arr[a];
arr[a] = arr[b];
arr[b] = temp;
}
public static void Something(int[] arr) {
int a = 0, b = 0, k = arr.Length-1;
while (b <= k)
{
if (arr[b] % 3 == 0)
{
What(arr, a, b);
a++;
b++;
}
else if (arr[b] % 3 == 1)
{
b++;
}
else
{
What(arr, b, k);
k--;
}
}
}
סעיף א
נתון מערך a={1,3,2,6,10}. איך ייראה המערך אחרי הזימון what(a, 0, a.length-1)?
סעיף ב
עקבו באמצעות טבלת מעקב אחר ביצוע something(arr) עבור המערך int[] arr={1,3,4,2,8,12,7,6}; רשמו מה יהיו הערכים של המערך arr אחרי הזימון. הערה: אין צורך להראות מעקב אחרי הזימונים של הפעולה what.
סעיף ג
האם קיים מערך arr של שמונה מספרים שלמים חיוביים שונים זה מזה שלא ישתנה אחרי הזימון something(arr)? אם כן — הביאו דוגמה למערך כזה, אם לא — הסבירו למה.
סעיף ד
מה מבצעת הפעולה something(arr) עבור מערך כלשהו של מספרים שלמים וחיוביים?
שאלות ותגובות על השאלה
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה לתכנות
שאלו כאן — ותקבלו מענה מוסמך.