נתונות הפעולות sod, secret הבאות (ראו קוד). הפעולה sod מקבלת מספר שלם וחיובי (גדול מ-0).
נתונות הפעולות sod, secret הבאות (ראו קוד). הפעולה sod מקבלת מספר שלם וחיובי (גדול מ-0).
סעיף א
נתונות הפעולות הבאות:
public static double sod (int n)
{
return sod (n,0,0);
}
private static double sod (int n, int c, double a)
{
if (n == 0 && c == 0) return 0;
else
if(n == 0) return a/c;
else return sod (n/10, c+1, a+ (n % 10));
}
public static boolean secret (int[] a)
{
return secret (a, a.length-1);
}
public static boolean secret (int[] a, int m)
{
if(m==0) return true;
else
return secret(a, m-1) && (sod(a[m]) - sod(a[m-1]) == 1);
}
עקבו אחרי זימון sod(3234) ורשמו את תוצאת הזימון. יש להראות מעקב!
סעיף ב
מה מבצעת הפעולה sod(n) עבור מספר שלם וחיובי (גדול מ-0) n, באופן כללי?
סעיף ג
נתון מערך a בגודל 6 הבא:
| 0 | 1 | 2 | 3 | 4 | 5 |
|---|---|---|---|---|---|
| 17 | 5 | 864 | 51 | 77 | 789 |
עקבו אחרי זימון secret(a) ורשמו את תוצאת הזימון. יש להראות מעקב! אין צורך במעקב אחרי הפעולה sod.
סעיף ד
שנו את סדר האיברים במערך a (מסעיף ג') כך שזימון secret(a) יחזיר את התוצאה ההפוכה לזו שהתקבלה בסעיף ג'.
סעיף ה
מה מבצעת הפעולה secret(a) עבור מערך a של מספרים שלמים גדולים מ-0, באופן כללי?
שאלות ותגובות על השאלה
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה לתכנות
שאלו כאן — ותקבלו מענה מוסמך.