2009-12-19 5 views
0

Je suis en train de calculer le paiement mensuel pour le scénario suivant:Pourquoi t-Math.Payment Delphi Fonction Return Un chiffre négatif

5 000 $ est empruntée pendant 3 ans à 8,00% composé mensuellement avec 1 000 $ dû à la fin de le terme.

/* 
From Math.pas 
function Payment(Rate: Extended; 
NPeriods: Integer; 
const PresentValue: Extended; 
const FutureValue: Extended; 
PaymentTime: TPaymentTime): Extended; 
*/ 

var 
    Pmt : Extended; 
begin 
    Pmt := Payment(0.08/12,36,5000,1000,ptEndOfPeriod); 
    Edit1.Text := FloatToStr(Pmt); 
end 

Résultat = -181,351526101918

Le résultat est correct, sauf qu'il est négatif.

Pourquoi le résultat de la fonction de paiement renvoie-t-il un nombre négatif?

Répondre

8

La valeur négative est attendue. Si vous exécutez la fonction PMT d'Excel, vous verrez le même résultat.

La fonction balances entre la direction de l'argent va. Le signe négatif signifie que vous payez de l'argent sur l'argent emprunté (les valeurs positives dans l'appel de la fonction). Si vous passez à des valeurs négatives dans la fonction (c'est-à-dire -5000 et -1000), le résultat sera positif.

1

Depuis que vous avez emprunté l'argent, pourriez-vous essayer avec ** - ** 5000 et ** - ** 1000?

1

Pour 5000 devenir 1000, vous devez prendre quelque chose, pas ajouter. Puisque vous payez et ne recevez pas, vous devriez vous attendre à un montant négatif.

Questions connexes