آموزشگاه برنامه نویسی تحلیل داده
آموزشگاه برنامه نویسی تحلیل داده

ریاضیات ممیز شناور ده دهی در پایتون

دوره های مرتبط با این مقاله
دوره آموزش پایتون

ریاضیات ممیز شناور ده دهی در برنامه نویسی python


ماژول decimal یک نوع داده ده دهی (Decimal) را برای ریاضیات ممیز شناور ده دهی (decimal floating point arithmetic) ارائه می کند. در مقایسه با پیاده سازی float داخلی، برای ممیز شناور دودویی، این کلاس خصوصا برای موارد زیر مفید است.

  • برنامه های کاربردی مالی و سایر کاربردهایی که نیاز به نمایش ده دهی دقیق دارند.
  • کنترل داشتن روی دقت.
  • کنترل داشتن روی گرد کردن برای برآورده کردن ملزومات قانونی یا نظارتی.
  • ردیابی مکان های اعشار قابل توجه.
  • برنامه های کاربردی که در آنها کاربر انتظار دارد، نتایج با محاسبات انجام شده به صورت دستی، هماهنگ باشند.

برای مثال، محاسبه 5 درصد از هزینه تلفن به مبلغ 70 سنت، در ممیز شناور(اعشار) ده دهی و ممیز شناور دو دویی نتایج متفاوتی می دهد. زمانی که نتایج به نزدیک ترین سنت گرد می شوند، این تفاوت قابل توجه می شود.


    >>> from decimal import *
    >>> round(Decimal('0.70') * Decimal('1.05'), 2)
    Decimal('0.74')
    >>> round(.70 * 1.05, 2)
    0.73

نتایج Decimal یک صفر را در ادامه نگه می دارد، و به طور خودکار four place significance مضروب ها را two place significance در نظر می گیر. ده دهی، محاسبات را همانند محاسبات انجام شده به صورت دستی تولید می کند، و از بروز مسائلی که ممکن است در زمانی که ممیز شناور دو دویی نمی تواند مقادیر ده دهی را دقیقا نمایش دهد ، اجتناب می کند. نمایش دقیق، کلاس Decimal را قادر می سازد تا محاسبات modulo و تست های برابری که برای ممیز شناور دو دویی مناسب نیست را انجام دهد.


    >>> Decimal('1.00') % Decimal('.10')
    Decimal('0.00')
    >>> 1.00 % 0.10
    0.09999999999999995
    
    >>> sum([Decimal('0.1')]*10) == Decimal('1.0')
    True
    >>> sum([0.1]*10) == 1.0
    False

ماژول decimal محاسبات را با میزان دقتی که مورد نیاز است انجام می دهد.

    >>> getcontext().prec = 36
    >>> Decimal(1) / Decimal(7)
    Decimal('0.142857142857142857142857142857142857')

  • 29
  •    38
  • تاریخ ارسال :   1399/03/28

دانلود PDF دانشجویان گرامی اگر این مطلب برای شما مفید بود لطفا ما را در GooglePlus محبوب کنید
رمز عبور: tahlildadeh.com یا www.tahlildadeh.com
ارسال دیدگاه نظرات کاربران
شماره موبایل دیدگاه
عنوان پست الکترونیک

ارسال

آموزشگاه برنامه نویسی تحلیل داده
آموزشگاه برنامه نویسی تحلیل داده

تمامی حقوق این سایت متعلق به آموزشگاه تحلیل داده می باشد .