2016-09-02 23 views
-2

C++での小数点以下を持って答えを計算する助けが必要は、しかし、私はこの時点で何をすべきかわからない、正しい答えを得るか助けてください、私は最終的な答えの小数点を持つように、このコードを取得カント

#include<stdio.h> 

int main(){ 

    int n1,n2,n3,n4,n5; 

    printf("Please enter the cost of the car then your down payment\n"); 


    scanf("%d%d",&n1,&n2); 
    n3=n1-n2; 

    printf("Now enter how many months of financing you would like\n"); 
    scanf("%d",&n4); 

    n5=n3*1.05/n4; 
    printf("Your car payment is %d per month",n5); 

    return 0; 
} 
+1

'int'の値と'%d'が出力する値を調べます。さらに、 'int n1、n2、n3、n4、n5; 'ということは、いくつかのレベルで悪いです。 – LogicStuff

答えて

2

ます2つの問題があります。

n5=n3*1.05/n4; 

は、精度が失われないようにn5のための浮動小数点型を使用します。

  1. 主な問題は、あなたがラインの精度を失っているということです。

    double n5 = n3*1.05/n4; 
    
  2. 変更printf線は小数点以下2桁の浮動小数点型を印刷します。

    printf("Your car payment is %.2f per month\n", n5); 
    
+0

私のために働いてくれてありがとう、私は浮動小数点と倍精度浮動小数点をn5のために使用しようとしましたが、私の答えは常に0になっていましたが、%fはそれを固定しました。 – josephb0

0

整数だけで作業するときは、小数点以下を取得することはありません。 doublefloatのような浮動小数点型を使用する必要があります。

関連する問題