2016-06-12 9 views
0

誰でも以下のコードを教えてもらえますか?私は答えによって完全に困惑しています、それは138934を返し続けます。私は現在Code :: Blocksを使用しています。C++ - 整数による整数除算の返答が正しくない

何かを完全に間違って宣言しているのですか?基本的な質問を赦してください、私はこれをチェックしており、何の答えもオンラインにしていません。

int amount, fifties; 
fifties= amount/50; 

cout<<"Please enter amount: "; 
cin>>amount; 

cout<<"You have entered: "<<amount<<endl; 
cout<<"Answer: "<<fifties<<endl; 
+2

を受信する前であっても

初期化されていない値の量は、ごみ値が含まれます、あなたは五十年代を計算しています。それはごみの値を持っています。 –

+0

ちょうど2番目の行を6番目に移動(カット&ペースト) –

答えて

0

投稿したコードでは、amountは初期化されていません。

したがって、fifties= amount/50;という行は、ランダムなガーベッジ値を持つfiftiesになります。克服するために

、あなたはとamountに何らかの値を割り当てる必要があります、

int amount=100 

または理想的cin>>amount下の行fifties= amount/50;を移動します。 fifties= amount/50;cin>>amount行の下に書くと、amountにはユーザーが入力した値が含まれていることが確認されます。したがって、次の行で有効な除算を実行すると、予期される解答を含むfiftiesになります。

作業コードhere

+0

私は行を下に移動しました。今はうまくいきます。悲しいことに、30分間考えていた。本当にありがとう。 :) – Enthu

0

amountは、最初の有益な価値を持つようにちょうど後cin >> amount;ラインをfifties = amount/50;ラインを移動します。

+0

啓発に感謝します。これは私には新しいものですが、これに注目します。本当にありがとう。 :) – Enthu

0

「amount」の値を初期化し、ユーザーから入力値を受け取った後に50を計算します。あなたは `amount`が初期化されていないで入力