'מספר ראשוני' הוא מספר שהמתחלק רק בעצמו וב-1 (גם המספרים 1 ו-2 הם ראשוניים). לפניכם הפעולה החיצונית isPrime - אפשר להשתמש בפעולה בלי לממש אותה. חתימתה: public static boolean isPrime (int num). הפעולה מחזירה true אם num הוא ראשוני, אחרת מחזירה false.
'מספר ראשוני' הוא מספר שהמתחלק רק בעצמו וב-1 (גם המספרים 1 ו-2 הם ראשוניים). לפניכם הפעולה החיצונית isPrime - אפשר להשתמש בפעולה בלי לממש אותה. חתימתה: public static boolean isPrime (int num). הפעולה מחזירה true אם num הוא ראשוני, אחרת מחזירה false.
ממשו את הפעולה החיצונית שלפניכם. הפעולה מקבלת צומת ללא בנים (עלה) שערכו גדול מ-0. אם ערך הצומת הוא מספר ראשוני, הפעולה מחזירה false. אחרת, הפעולה מוסיפה לצומת שני בנים שהמכפלה של ערכיהם שווה לערך הצומת המקורי, והערך של כל אחד מהם גדול מ-1. לאחר ההוספה הפעולה מחזירה true.
public static boolean addNodes (BinNode<Integer> tr)
נתונה הפעולה החיצונית what שלפניכם (עוברת רקורסיבית: אם addNodes(tr) מחזירה true - קוראת לעצמה על tr.getLeft() ו-tr.getRight()). סרטטו את העץ כפי שייראה בתום הפעלת what עבור צומת tr - עלה ללא בנים - שערכו 150. יש להראות מעקב.
הסבירו מה מבצעת הפעולה what.
שאלות ותגובות על השאלה
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה לתכנות
שאלו כאן — ותקבלו מענה מוסמך.