המשימה
מספר משוכלל הוא מספר ששווה לסכום מחלקיו (חוץ מעצמו).
למשל 6 = 1+2+3, ולכן 6 משוכלל.
כתוב **שתי** פעולות:
1. sumOfDivisors(n) — מחזירה את סכום המחלקים של n, לא כולל n עצמו.
2. isPerfect(n) — משתמשת בראשונה ומחזירה true אם n משוכלל.
דוגמאות:
6 → true
28 → true
12 → false
הנחיות:
• הפעולה השנייה חייבת לקרוא לראשונה. זו מטרת התרגיל — פירוק לתת-בעיות.
```ds:table
{"title":"איך זה נראה","rows":[["n","המחלקים בלי n","סכומם","משוכלל?"],["6","1 · 2 · 3","6","כן"],["12","1 · 2 · 3 · 4 · 6","16","לא"],["28","1 · 2 · 4 · 7 · 14","28","כן"],["1","אין","0","לא"]]}
```
קוד הפתיחה
public class Main {
public static int sumOfDivisors(int n) {
// כתוב את הפתרון כאן
return 0;
}
public static boolean isPerfect(int n) {
// השתמש ב-sumOfDivisors
return false;
}
public static void main(String[] args) {
System.out.println(sumOfDivisors(6)); // 6
System.out.println(sumOfDivisors(12)); // 16
System.out.println(isPerfect(6)); // true
System.out.println(isPerfect(28)); // true
System.out.println(isPerfect(12)); // false
}
}
כדי לכתוב, להריץ ולקבל משוב — התחבר עם חשבון Google. לוקח שנייה.
המשוב נוצר על ידי AI ועשוי לטעות. אם אתה חושב שהפתרון שלך נכון —
כנראה שאתה צודק. הציון כאן הוא לתרגול בלבד ואינו מדווח לאיש.
אל תכתוב בקוד פרטים אישיים כמו שם מלא, טלפון או כתובת. הקוד נשלח לשירות
בדיקה חיצוני.