خطای عددی: چرا کامپیوتر ۰٫۱ + ۰٫۲ را دقیقاً ۰٫۳ نمیبیند؟
اعداد اعشاری در کامپیوتر بهصورت دودویی ذخیره میشوند و بسیاری از کسرهای دهدهی (مثل ) در مبنای دو بیپایاناند. به همین دلیل در بیشتر زبانها حاصل برابر است. این خطای گردکردن است و از مرتبهٔ در دقت دوگانه.
سه خطای مهم در محاسبات عددی:
• خطای گردکردن: ناشی از نمایش محدود اعداد.
• خطای قطع (truncation): ناشی از تقریب فرمول؛ مثلاً قطع سری تیلور یا استفاده از بهجای مشتق.
• خطای مدل و داده: ناشی از اندازهگیری و سادهسازی مسئله.
حذف ارقام معنادار. تفریق دو عدد تقریباً برابر ارقام درست را از بین میبرد. مثلاً برای بزرگ، دقت کمی دارد، ولی شکل معادل
پایدار است. قاعدهٔ عملی: عبارت را طوری بازنویسی کنید که تفریق اعداد نزدیک پیش نیاید.
معیار توقف. در روشهای تکراری هرگز برابری دقیق () را آزمایش نکنید؛ از استفاده کنید و تعداد تکرار را هم محدود کنید.
MathTech همهجا از محاسبات دوگانه استفاده میکند و برای هر روش معیار توقف و حداکثر تکرار را در فرم قرار داده است.