• ベストアンサー

if文を使わずに奇数・偶数を判断

はじめまして。C言語解説サイトを巡ってみたのですが、if文無しの奇数偶数判断にまで辿りつかず頭を抱えています。 任意の数字を(指定回数分)打ち込み、奇数だった場合のみ加算し合計を表示するというプログラムを作成したいのですが色々と規制がかかっており、if文・switch文は使用不可/ループも1回のみとなっています。 if文を使えれば x%2 == 1 で奇数と判断できるのですが・・・。 ■ if文を使わず奇数・偶数かを判断→加算 の流れ を是非教えて頂きたいです。お時間ありましたらご教授よろしくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

打ち込んだ数値が整数だったらの話ですが。 ・偶数の場合2で割った余りは0 奇数の場合2で割った余りは1 ・(上で余りとして出た)0を掛けた答えは0 ・(上で余りとして出た)1を掛けた答えは奇数だった数値そのもの というのを利用するとif文無しで奇数のみを加算できそうですね。

lemon_s
質問者

お礼

非常に丁寧に説明してくださってありがとうございました! 上記を参考にもう一度頑張ります<(_ _*)>

その他の回答 (2)

  • asuncion
  • ベストアンサー率33% (2127/6289)
回答No.3

三項演算子を使えばよいと思います。

lemon_s
質問者

お礼

「三項演算子」検索してみます。ありがとうございました<(_ _`)>

noname#41855
noname#41855
回答No.2

何かの課題でしょうか? 仕事or趣味のプログラミングならそんな制約は付けないでしょうし…。 とりあえず答えをモロ書きはせずにアドバイスだけ。 「三項演算子」または「条件演算子」で検索してみてください。 if・switch文は使わずに目的が果たせます。

lemon_s
質問者

お礼

はい、学内での練習問題なのですが、「if文」を使ってはいけない!?!?と混乱してしまいました。 「三項演算子」はまだ習っていない区分なのですが、「条件演算子」はなんとか理解できそうです。条件演算子解説のページを見ながら頑張ります。適切なアドバイスありがとうございました<(_ _*)>

関連するQ&A