मैं निश्चित बिंदु बिंदुओं पर संचालन करने के लिए PHP की bcmath
लाइब्रेरी का उपयोग कर रहा हूं। मैं पायथन के Decimal
वर्ग के समान व्यवहार प्राप्त करने के लिए उम्मीद कर रहा था, लेकिन मैं काफी निम्नलिखित व्यवहार के बजाय आश्चर्य हुआ:PHP बीसीएमएथ बनाम पायथन डेसिमल
// PHP:
$a = bcdiv('15.80', '483.49870000', 26);
$b = bcmul($a, '483.49870000', 26);
echo $b; // prints 15.79999999999999999999991853
अजगर में Decimal
रों का उपयोग करते समय मैं:
# Python:
from decimal import Decimal
a = Decimal('15.80')/Decimal('483.49870000')
b = a * Decimal('483.49870000')
print(b) # prints 15.80000000000000000000000000
क्यों कि है ? चूंकि मैं इसका उपयोग बहुत संवेदनशील संचालन करने के लिए कर रहा हूं, इसलिए मैं पीएचथॉन (यानी (x/y) * y == x
)
हाँ:
यहाँ एक प्रदर्शन है '483.4 9 80000', 26); गूंज गेट टाइप ($ ए); 'प्रिंट्स" स्ट्रिंग " –
कौन सा सही है, बीटीडब्ल्यू? – Will