- ベストアンサー
ヒントを教えて欲しいです
2と1が同時に表示されてしまうのです。 キーボードから2個の整数を読み込み、それらの和と差がともに偶数であれば整数の2を表示し、いずれか一方のみが偶数の場合は1を表示し、それ以外の場合は整数の0を表示するプログラムを作れ #include<stdio.h> main() { int A,B; printf("Enter an integer:"); scanf("%d",&A); printf("Enter an integer:"); scanf("%d",&B); if((A+B)%2==0,(A-B)%2==0){ /* 偶数ならば */ printf("2\n"); } if((A+B)%2==0){ /* 偶数ならば */ if((A-B)%2==0) /* 偶数ならば */ printf("1\n"); } else{ /* 奇数ならば */ printf("0\n"); } }
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
コンパイルエラーが出てたいませんか? >if((A+B)%2==0,(A-B)%2==0) こういうのはできませんよ。 複合条件式の書き方を勉強してください(&&、||)。 それと(A+B)、(A-B)を繰り返すよりも、 wa=(A+B); sa=(A-B); と最初に計算してその結果を使用したほうがスマートです。
その他の回答 (1)
- DRArusOK
- ベストアンサー率27% (19/69)
回答No.2
0で初期化する。 和が偶数だったら1を足す。 差が偶数だったら1を足す。 表示する。
質問者
補足
足すんですか…? プログラミングは初心者で授業の宿題であまりわからないんです…
補足
コンパイルエラーは出ていません。 複合条件式勉強します。 最初に計算するんですね 書き直してみます。