print
(son3)
#0.8019999999999999
Ushbu dasturda javob 0.802 chiqishi kerak edi, lekin uni javobi yuqoridagi misolda
ko‟rinib turganidek 0.8019999999999999 qiymatni ekranga chiqaradi. Bu qiymat hato
emas. Haqiqiy sonlarning kompyuter xotirasida saqlanish formati butun sonlarnikidan
farqlanadi. Shu sababli suzuvchan nuqtali sonlar qiymati taqriban saqlanadi (absolyut
xatolik inobatga olmasa ham bo‟ladigan darajada kichik). Shuning uchun haqiqiy
sonlarni yahlitlash uchun
round() funksiyasidan foydalaniladi.
son1 =
4.01
son2 =
5
son3 =
round
(son1 / son2,
4
)
print
(son3)
#0.802
round(a,n) funksiyasi ikkita parametr qabul qilib, dastlabkisi yahlitlanishi
kerak
bo‟lgan qiymat, ikkinchisi verguldan keyin nechta belgi aniqlikda chiqarilishi
kerakligini anglatuvchi son.
Dostları ilə paylaş: