אלגוריתם להוצאת שורש שלישי: נקבל מספר N ונמצא X
כך ש X בחזקת 3 הוא N
קלוט N מספר.
נחש פתרון: X=N/3
בצע בלולאה עד שנמאס לך:
X=X-((X^3-N)/(3*X^2))פלט X:
נעשה דוגמת הרצה עבור N=27:
נתחיל מX=9 (שזה ניחוש דיי גרוע, אפשר לנחש טוב יותר)
נציב במשוואה לעיל, ונקבל:
X=9-((9^3-27)/(3*9^2))=9-(702/243)=6.11
נמשיך:
X=6.11-((6.11^3-27)/(3*6.11^2))=4.315
נמשיך:
X=3.36
וכן:
X=3.0372
עוד קצת:
X=3.00045
אחרון:
X=3.000000069
ככל שנמשיך כך נקבל תשובה יותר מדויקת,(בשלב מסוים נגיע
לדיוק המקסימלי של המחשב).
DRYICE
נ.ב
השיטה לעיל נקראית: ניוטון-ראפסון וניתן למעשה בשיטה
דומה למצוא שורשים לכל פונקציה: במקרה הזה מה שעשינו זה
חיפשנו שורש למשוואה: X^3-N צעד האיטרציה היינו תמיד:
(X=X-f(X)/f`(X
בהחלט ראוי לבחור ניחוש התחלתי טוב, זה חוסך איטרציות.
אני בחרתי לעיל N/3 באופן ממש שרירותי. אפשר לנסות sqrt(X
אולי יצא יותר טוב. למעשה הניחושים הטובים הם תלויי מימוש,
ומנצלים אצ המבנה בו מיוצג מספר ממשי במחשב.