2016-10-28 4 views
-2

私のプログラムは整数が奇数か偶数かを表示しながら、最小の整数のメッセージを出力するようにしていますか? プログラム: まず、ユーザーに1の整数と2番目の整数を入力させ、最小の整数を最初に表示し、それが奇数か偶数かを表示し、2番目の整数とそれが奇数か偶数かを表示する必要があります。 私のプログラムは、最小の整数と、それが奇数か偶数かのどちらか一方のみを表示していますか?別の関数を呼び出すことによって行うことができるコーディング小さい整数のメッセージを印刷するにはどうすればよいですか?

if (number1 > number2) 
+4

をなぜ同じif'あなた 'if'と'それ以外の条件はありますか? – UnholySheep

答えて

0
if (number1 < number2) 
{ 

    if (number1 % 2 == 0) 
     cout << number1 << " is even.\n"; 
    else 
     cout << number1 << " is odd.\n"; 
    if (number2 % 2 == 0) 
     cout << number2 << " is even.\n"; 
    else 
     cout << number2 << " is odd.\n"; 
} 
else 
{ 
    if (number2 % 2 == 0) 
     cout << number2 << " is even.\n"; 
    else 
     cout << number2 << " is odd.\n"; 
    if (number1 % 2 == 0) 
     cout << number1 << " is even.\n"; 
    else 
     cout << number1 << " is odd.\n"; 
} 

+2

*「コーディングは別々の関数を呼び出すことで行うことができます」*それはどういう意味ですか? – UnholySheep

+0

elseコードを別々の関数で保持し、呼び出すことができる場合。理解しやすいソリューションOPが望むなら、if-elseを2つの関数に入れることができます。 –

1

最初に、両方ともifの条件が同じであるため、2番目は決して起こりません。
第2に、取得したブランチ内の1つの番号の情報のみを出力します。

あなたはこのような構成必要があります:

if (number1 < number2) 
{ 
    show info for number1 
    show info for number2 
} 
else 
{ 
    show info for number2 
    show info for number1 
} 
show info for sum 

をしかし、これは少し扱いに​​くいとエラーが発生しやすいです。
代わりに、あなたが最初の順番に番号を手配することができます:

if (number1 > number2) 
{ 
    std::swap(number1, number2); 
} 
show info for number1 
show info for number2 
show info for sum 
関連する問題