נתונה פעולה חיצונית ששמה DigitSum המקבלת מספר שלם – num1 ומחזירה את סכום כל הספרות במספר. אפשר להשתמש בפעולה בלי לממש אותה.
נתונה פעולה חיצונית ששמה DigitSum המקבלת מספר שלם – num1 ומחזירה את סכום כל הספרות במספר. אפשר להשתמש בפעולה בלי לממש אותה.
לדוגמה: עבור num1 = 961, הפעולה תחזיר 16 (9 + 6 + 1). "סכום הספרות העמוק" של מספר כלשהו הוא מספר חד-ספרתי המתקבל באופן שלהלן: מחשבים את סכום הספרות שוב ושוב עד שמתקבל מספר חד-ספרתי. דוגמאות: "סכום הספרות העמוק" של המספר 5 הוא 5. "סכום הספרות העמוק" של המספר 36 הוא 9 (6+3). "סכום הספרות העמוק" של המספר 942378 הוא 6, כמפורט להלן: 9 + 4 + 2 + 3 + 7 + 8 = 33 3 + 3 = 6
כתבו פעולה חיצונית ששמה DeepSum המקבלת מספר שלם num1 שאינו שלילי, ומחזירה את "סכום הספרות העמוק" שלו.
public static int DeepSum (int num1)
"סכום הספרות העמוק" יכול להיות אי-זוגי (למשל 5 כמו בדוגמה הראשונה שלעיל) או זוגי (למשל 6 כמו בדוגמה השלישית שלעיל). יש הטוענים כי בטווח שבין 1 ל-999999 יש יותר מספרים בעלי "סכום ספרות עמוק" זוגי ממספרים בעלי "סכום ספרות עמוק" אי-זוגי. כתבו פעולה חיצונית ששמה IsCorrect המחזירה true אם הטענה נכונה, ואחרת מחזירה false. הערה: חובה להיעזר בפעולה שכתבתם בסעיף א(1).
public static bool IsCorrect ()
נתונה פעולה חיצונית נוספת, ששמה DigitExists המקבלת מספר שלם – num וספרה – digit. הפעולה מחזירה true אם הספרה digit מופיעה במספר num לפחות פעם אחת, ואחרת מחזירה false. אפשר להשתמש בפעולה בלי לממש אותה. כתבו פעולה חיצונית ששמה InBoth המקבלת שני מספרים שלמים: num1 ו-num2. הפעולה מחזירה true אם "סכום הספרות העמוק" של num1 מופיע במספר num2, וגם "סכום הספרות העמוק" של num2 מופיע במספר num1, אחרת היא מחזירה false. למשל עבור num1 = 36 ו-num2 = 942378 הפעולה תחזיר true כי "סכום הספרות העמוק" של num1 (9) מופיע במספר num2 (942378), ו"סכום הספרות העמוק" של num2 (6) מופיע במספר num1 (36). הערה: חובה להיעזר בפעולה שכתבתם בסעיף א(1).
public static bool InBoth (int num1, int num2)
שאלות ותגובות על השאלה
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה לתכנות
שאלו כאן — ותקבלו מענה מוסמך.