שגיאת עיגול במחשב

electricity86

New member
שגיאת עיגול במחשב

נניח נתון מספר PI. המתרגל אמר כי כל הכפלה של 10 ב-PI מביאה לאיבוד ספרה עשרונית (שמימין לנק' העשרונית). אם למשל PI הוא:
0.3141592654 * 10​
אז
10 * PI = 0.3141592654 * 100​
איני רואה כאן איבוד ספרת דיוק. אשמח לעזרה בנושא, תודה רבה.
 

electricity86

New member
מוסבר בקישור על שגיאת עיגול באופן כללי

התרגיל עליו המתרגל דיבר הוא כזה. נתון (sin(n*PI כאשר n הוא חזקות חיוביות של 10 -> ... , n = 10 , 100, 1000 . מבחינה תיאורטית התוצאה תמיד אמורה להיות אפס. מדוע החל מ- n=1000 התוצאה היא אינה 0?
 

johnny d

New member
אין שום משמעות לחזקות של 10

אם מדובר היה בחזקות של 2 אז הייתי מבין את התמיה. כאשר אתה מכפיל מספר בינארי מספר אשר משנה את תוכנם של k הספרות המשמעותיות שלו אז המספר לרוב מאבד מידע (מעגל את התוצאה). ככל הנראה כאשר אתה מכפיל את PI ב 10 או 100 השינוי אינו מהותי מספיק על מנת להשפיע על התוצאה (הסטיה קטנה מידי) וכשאתה מכפיל ב 1000 זה כן., תנסה להכפיל ב 1024 לדעתי תקבל תוצאה 0. סה"כ העסק מאוד פשוט לכל פעולה יש חסמים על שגיאות חישוב, אבל לא כל שימוש בפעולה גורם לשגיאה מקסימלית...
 

electricity86

New member
בקשר לעניין איבוד הספרות המשמעותיות

\תודה רבה על עזרתך. אתה אומר שאם היו מכפילים את PI בחזקות של 2, אז רק האקספוננט היה משתנה ואילו המנטיסה נשארת אותו הדבר לכן היינו מקבלים תוצאה 0 עבור כל n = 2^k כי לא איבדנו אף ספרה במנטיסה? תוכל בבקשה לפרט בקשר למה קורה למנטיסה ולאקספוננט כאשר מכפילים במספר שאינו חזקה של 2 כמו 1000? כלומר מהו סדר ההתרחשויות, האם קודם כל מכפילים את המנטיסה ב-1000 , ואז מגדילים את האקספוננט כמה שנדרש עד שמימין לנק' העשורנית יהיה רק מספר אחד? תודה!
 

electricity86

New member
../images/Emo35.gif

 
למעלה