मेरे पास मेरे कोड में एक हिस्सा है जहां मुझे दशमलव जवाब के बजाय विभाजित करने और शेष करने की आवश्यकता है।php में शेष के साथ विभाजित?
मैं यह कैसे कर सकता हूं?
धन्यवाद
मेरे पास मेरे कोड में एक हिस्सा है जहां मुझे दशमलव जवाब के बजाय विभाजित करने और शेष करने की आवश्यकता है।php में शेष के साथ विभाजित?
मैं यह कैसे कर सकता हूं?
धन्यवाद
आप क्या आप "%" (मापांक) ऑपरेटर का उपयोग का वर्णन कर रहे हैं कर सकते हैं। निम्नलिखित कोड शेष के साथ विभाजित करने का एक उदाहरण है।
$remainder=$num % $divideby;
$number=explode('.',($num/$divideby));
$answer=$number[0];
echo $answer.' remainder '.$remainder;
$quotient = intval($dividend/$divisor);
$remainder = $dividend % $divisor;
intval
floor
के बजाय का उपयोग करते हुए शून्य की ओर भागफल दौर होगा, सटीक परिणाम उपलब्ध कराने जब लाभांश नकारात्मक है।
यदि नकारात्मक हो तो गलत परिणाम मिल सकता है, उदा। यदि लाभांश = 5 और divisor = 2 आप 2 –
की बजाय 3 को गणना के रूप में गणना करेंगे हां, मैंने देखा कि जल्द ही 'फर्श' के बजाय 'अंतराल' का उपयोग करने के लिए मेरे उत्तर को पोस्ट करने और संशोधित करने के बाद। –
गैर-पूर्णांक – Sablefoste
सकारात्मक और नकारात्मक संख्या के लिए एक समाधान:
$quotient = $dividend/$divison;
$integer = (int) ($quotient < 0 ? ceil($quotient) : floor($quotient));
$remainder = $dividend % $divisor;
आप उसे ढूंढने की जरूरत है,% ऑपरेटर कहा जाता है आधुनिक (या मापांक)।
उपयोग इस समारोह इसका एक सरणी विवरण सरणी gmp_div_qr (resource $n , resource $d [, int $round ])
The function divides n by d .
मैं इस दृष्टिकोण विकसित करने के लिए, क्योंकि मेरा अंश एक नाव मूल्य था और मापांक परिणाम गोलाई था।
रैफैल्लो के दृष्टिकोण का उपयोग करते हुए here फ्लोट को विभाजित करने और उपरोक्त सैम 152 के समाधान से लेने के लिए निम्नलिखित के साथ आया।
$a = 2.1;
$b = 8;
$fraction = $a/(float) $b;
$parts = explode('.', $fraction);
$int = $parts[0];
$remainder = $score - ($int*$b) ;
mathematical correct answer है:
$reminder = $dividend % $divisor;
$quotient = ($dividend - $reminder)/$divisor;
और अनुस्मारक हालत 0 <= $reminder < abs($divisor)
पुष्टि करता है।
दुर्भाग्यवश, कई प्रोग्रामिंग भाषाएं (PHP समेत) गणितीय दृष्टिकोण से नकारात्मक संख्याओं को सही तरीके से संभालती नहीं हैं। वे मानदंड और अनुस्मारक के संकेत की गणना करने के लिए different rules का उपयोग करते हैं।
आप ऋणात्मक संख्याओं के साथ काम करते हैं और गणितीय सही परिणाम प्राप्त करने की जरूरत है, तो आप निम्न सूत्रों का उपयोग कर सकते हैं:
$reminder = (($dividend % $divider) + abs($divider)) % abs($divider);
$quotient = ($dividend - $reminder)/$divider;
वे जिस तरह से पर भरोसा करते हैं पीएचपी नकारात्मक ऑपरेंड साथ मापांक गणना करता है और वे प्रदान नहीं कर सकते सही परिणाम अगर वे एक अलग भाषा में पोर्ट किया जाता है।
यहां एक script है जो इन सूत्रों को लागू करता है और उपरोक्त गणितीय सही उत्तर में उदाहरण के रूप में प्रदान किए गए मानों के विरुद्ध परिणाम जांचता है।
का उपयोग करते समय '$ शेष = एफएमओडी ($ लाभांश, $ divisor) 'का उपयोग करें, यह विचार नहीं किया गया कि यह क्यों मतदान किया गया था। – demonkoryu
मंजिल() और मापांक (%) यदि केवल कुछ मिनट/सेकंड दिए का उपयोग कर 1 घंटे 6 मिनट की तरह तार को दिखाने के लिए एक उदाहरण:
$minutes=126;
if($minutes < 60) {
$span= $minutes.' min.';
} else {
$rem=$minutes % 60;
$span=floor($minutes/60).' h. '. (($rem>0) ? $rem.' min.':'');
}
// echo 'Hello Jon Doe, we notify you that even will last for 2 h. 6 min.
echo 'Hello Jon Doe, we notify you that event will last for '.$span;
एक नाव प्रकार पर एक स्ट्रिंग समारोह का प्रयोग न करें। बेहतर 'मंजिल() 'का उपयोग करें। – Gumbo
अंधेरे से फर्श का उपयोग कर नकारात्मक परिणाम पर असफल हो सकता है –