2017-02-26 9 views
-5

私はC++の割り当てをしようとしています。入力は浮動小数点になり、プログラムは全体の部分と10進数値を返します

浮動小数点データ型でユーザーから入力を受け取り、指定された値と小数部の全体をポイントなしで区切って出力する必要があります。例えば、ユーザーが4.456を入力し、出力が全部4ポイントなしの小数点以下は456です。

私はこれを試していますが、次に何をするかわかりません。

#include<iostream> 
using namespace std; 

int main(int argc, char* argv[]) 
{ 
    float a,b; 
    int c,d=0,z; 

    cout<<"entre a number"<<endl; 
    cin>>a; 

    c=static_cast<int>(a); 
    b=a-c; 
    b=z; 
    cout<<z; 

    return 0; 
} 
+3

ようこそスタックオーバーフロー! [これまでに試したこと](http://mattgemmell.com/what-have-you-tried/)を表示するために質問を編集してください。問題を抱えているコードの[Minimal、Complete、Verifiable example](http://stackoverflow.com/help/mcve)を含める必要があります。 [How to Ask](http://stackoverflow.com/help/how-to-ask)もお読みください。 – user

答えて

1

簡単/プリミティブのアプローチは、最初の変換(キャスト)intfloat/doubleになるであろう。これは小数点以下を削除し、答えの最初の部分を取得します。 " - "の前の整数です。次に、元の数値からこの整数を減算するだけで、0.xxxxのままになります。印刷する小数点の数値を決定し、その数値に10を掛けてintに再度キャストして印刷しますそれ。

+0

私はそれを試してみようとしています #include using namespace std; int main() { float a、b; int c、d = 0、z; cout << "entre番号" << endl; cin >> a; c = static_cast (a); b = a-c; b = z; cout << z; ここから私を助けるか、ガイドしてください –

関連する問題