2011-12-05 23 views
10

में बंधक कैलकुलेटर मैं एक साधारण ऋण कैलकुलेटर पर काम कर रहा हूं, इतना आसान है कि यह ठीक से काम नहीं कर रहा है।PHP गलत राशि

function calculatePayment($price, $down, $term) 
{ 
    $loan = $price - $down; 
    $rate = (4/100)/12; 
    $month = $term * 12; 
    $payment = floor(($loan*$rate/1-pow(1+$rate,(-1*$month)))*100)/100; 
    return $payment; 
} 

echo calculatePayment(200000,0,30); 

इस उत्पादन: 666,36

कि महान यदि मासिक ऋण भुगतान का तरीका यह है होगा (नहीं है कि 666 नंबर लेकिन कम संख्या hahah है), मेरी समस्या यह अधिक हो रहा है।

मुझे यह क्यों मिल रहा है?

+0

है क्या मूल्य बहाना मेरे सवाल किया जाना चाहिए: $ – Sedz

+1

चारों ओर 950 या तो, कोष्टक $ ऋण और 1-पॉव चारों ओर याद कर रहे हैं होना चाहिए - के [प्राथमिकता ऑपरेशन] (http://en.wikipedia.org/wiki/Order_of_operations) –

उत्तर

11

मैं सिर्फ डाल जोड़ा (1-पॉव (1 + $ दर, (- 1 * $ महीने))) इस वजह से यहाँ क्या हो रहा है कि $ ऋण * $ दर 1 पर विभाजित हो जाएगा उसके बाद ही जारी रखने के

function calculatePayment($price, $down, $term) 
{ 
$loan = $price - $down; 
$rate = (4/100)/12; 
$month = $term * 12; 
$payment = floor(($loan*$rate/(1-pow(1+$rate,(-1*$month))))*100)/100; 
return $payment; 
} 

echo calculatePayment(200000,0,30); 

जवाब 954.83

+0

मेरी रोशनी टूट गई है, मैं कीबोर्ड को सही ढंग से नहीं देख पा रहा हूं, इसलिए यह एक संक्षिप्त स्पष्टीकरण था – Sedz

+0

मुझे अंतर दिखाई देता है धन्यवाद – Adam

+0

वोट कुंजियों के नीचे, सुवोश या दायां बटन उस पर क्लिक करें – Sedz

2
 
$payment = floor(($loan*$rate/1-(pow(1+$rate,(-1*$month))))*100)/100; 

संबंधित मुद्दे