בשאלה זו אין קשר בין הסעיפים.
בשאלה זו אין קשר בין הסעיפים.
סעיף א
נתונה הפעולה What המקבלת שני מספרים שלמים חיוביים a ו-b (גדולים מאפס).
public static bool What(int a, int b) {
return What(a, b, 1);
}
public static bool What(int a, int b, int n) {
if(a == 1)
return b == 1;
if(n == b)
return true;
if(n > b)
return false;
return What(a, b, n*a);
}
- מה תהיה תוצאת זימון הפעולה
What(2, 15)? יש להראות מעקב. - תנו דוגמה למספר דו-ספרתי b שעבורו תוצאת זימון הפעולה
What(3, b)תהיה true. - מה מבצעת הפעולה
What(a, b)באופן כללי עבור שני מספרים שלמים חיוביים?
סעיף ב
נתונה הפעולה Why המקבלת מספר שלם n.
public static bool Why(int n){
return Why(n, n);
}
public static bool Why(int n, int x){
if(n > x * x)
return false;
if(n < x * x)
return Why(n, x-1);
return true;
}
- מה תהיה תוצאת זימון הפעולה
Why(10)? יש להראות מעקב. - תנו דוגמה למספר דו-ספרתי n שעבורו תוצאת זימון הפעולה
Why(n)תהיה true. - מה מבצעת הפעולה Why באופן כללי עבור מספר שלם n? יש להתייחס למקרים שונים של n.
סעיף ג
נתונה הפעולה Display:
public static void Display(int n){
if(n>0) {
Display(n/10);
Console.Write(n % 10);
Display(n/10);
}
}
- מה יהיה פלט עבור זימון הפעולה
Display(12)? יש להראות מעקב. - מה יהיה פלט עבור זימון הפעולה
Display(123)? - מה יהיה פלט עבור זימון הפעולה
Display(1234)?
שאלות ותגובות על השאלה
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה לתכנות
שאלו כאן — ותקבלו מענה מוסמך.