נתונות הפעולות 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 bool Secret (int[] a)
{
return Secret (a, a.Length-1);
}
public static bool Secret (int[] a, int m)
{
if(m==0) return true;
else
return Secret(a, m-1) && (Sod(a[m]) - Sod(a[m-1]) == 1);
}
סעיף א
נתונות הפעולות הבאות:
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 bool Secret (int[] a)
{
return Secret (a, a.Length-1);
}
public static bool 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 מסעיף ג':
שנו את סדר האיברים במערך a (מסעיף ג') כך שזימון Secret(a) יחזיר את התוצאה ההפוכה לזו שהתקבלה בסעיף ג'.
סעיף ה
מה מבצעת הפעולה Secret(a) עבור מערך a של מספרים שלמים גדולים מ-0, באופן כללי?
שאלות ותגובות על השאלה
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה לתכנות
שאלו כאן — ותקבלו מענה מוסמך.