.NETエンジニア・プログラマ向けの技術情報・業界ニュースをお届けします。

  1. FEnet.NETナビ
  2. .NETコラム
  3. プログラミング言語
  4. C#
  5. C#のif文、論理演算子(and/or/not)とは?論理演算子(and/or/not)を記述する方法

C#のif文、論理演算子(and/or/not)とは?論理演算子(and/or/not)を記述する方法

  • C#
  • プログラミング言語
公開日時:   更新日時:
C#のif文、論理演算子(and/or/not)とは?論理演算子(and/or/not)を記述する方法
この記事でわかること
    基本情報技術者試験の試験対策はこちら>>

    システム
    エンジニア
    論理演算子には記述順位が存在するのでしょうか?

    プロジェクト
    マネージャー
    まずは論理演算子と実際の記述方法を見ながら理解を深めていきましょう。

    C#のif文、論理演算子(and/or/not)とは?


    今回は、C#のif文論理演算子(and/or/not)について紹介します。

    プログラムを作成する時、「~の場合、~しなさい。ただし~の場合 かつ ~の場合、~しなさい。」というように、条件に応じて処理を分岐したい場面は多いでしょう。C#ではif文が「~の場合、~しなさい。」の役割を、論理演算子(and/or/not)が「かつ」、「または」、「否定」の役割を果たします。

    シンプルな構文ですが、if文と論理演算子(and/or/not)をマスターすることで分岐処理を自在に記述でき、作成できるプログラムの幅が広がるため、この記事を読んでマスターしてみましょう。

    if文を記述する方法

    「~の場合、~しなさい。」の役割を果たすif文の記述について説明します。

    C#では次のようにif文を記述します。

    条件式には、結果がtrueまたはfalseになる式を記述します。処理内容には、if条件でtrueになった時に処理したい内容を記述します。

    変数が偶数の場合に値をコンソール表示する、if文を使ったサンプルプログラムです。

    実行結果は次のようになります。

    2は偶数です

    条件式に当たる偶数、奇数の判定は、2で割った余りが0になるか否かで行いました。変数のうち2は偶数のため、条件式にてtrueと判定され、値がコンソール表示されています。一方で、7は奇数のため条件式にてfalseと判定され、コンソール表示がされていません。

    偶数をコンソール表示するサンプルプログラムですが、変数が奇数の場合に、奇数であることを表示させたい時を考えてみます。

    上記の記述でも実現できますが、いかんせん無駄が多くなってしまいます。

    そこでelseを使いましょう。「~の場合、~しなさい。それ以外の場合、~しなさい。」と記述する場合は、if~elseを使うことができます。

    また、else ifを使用することで、「~の場合、~しなさい。それ以外~の場合、~しなさい。」のように、複数の分岐を記述することができます。

    偶数と奇数のコンソール表示プログラムを、if~else、if~else ifを使って表現してみます。

    if~else、if~else ifを適切に使うことでソースの可読性が上がるため、分岐処理を記述する場合はif~else、if~else ifを使ってみましょう。

    論理演算子(and/or/not)の書き方

    C#のif文について説明しました。「~の場合、~しなさい。それ以外の場合、~しなさい。」をC#で実現したい場合、if~else、if~else ifで実現できます。

    しかし、「~かつ~の場合、~しなさい。~または~の場合、~しなさい。~以外の場合、~しなさい」と表現したい場合もあるでしょう。

    冒頭でも紹介しましたが、「かつ」、「または」、「否定(~以外の場合)」を実現したい時に、論理演算子を使います。

    C#では次のように論理演算子を記述します。

    「かつ(and)」を実現したい場合は「&&」を、「または(or)」を実現したい場合は「||」を、「否定(not)」を実現したい場合は条件式の前方に「!」を付けます。

    次のサンプルプログラムは、二つの変数について偶数、奇数の判断をコンソール表示させるプログラムですが、論理演算子を使ってみました。

    実行結果は次のようになります。

    2と3のいずれかは偶数です

    ともに偶数という判定に「&&」を、いずれか偶数という判定に「||」を使用しました。また、変数1と変数2がともに奇数である判定に、否定演算子「!」を使用しました。「ともに奇数」は「いずれか偶数」の否定であるためです。もちろん「偶数以外 かつ 偶数以外」でも実現できます。

    bool型について、否定演算子を使用することで、

    すっきりとコーディングできますので、要所で否定演算子を使えるようにしましょう。

    if文と論理演算子を組み合わせる

    ここまでC#のif文と論理演算子について紹介しましたが、if文と論理演算子を組み合わせることで、プログラムの処理分岐を自在に実現することができます。

    以下、二つの変数が奇数と偶数であるかのコンソール表示プログラムを、if文と論理演算子を駆使して記述してみました。

    実行結果は次のようになります。

    2と3のどちらかは偶数です

    分岐が増えると処理が複雑になるため、サンプルのように適宜コメントを記述し、誰が見ても処理が理解できるように心がけましょう。

    システム
    エンジニア
    if分と組み合わせることでよりわかりやすい記述ができるということですね。

    プロジェクト
    マネージャー
    優先するべき順位をif分を使って、誰もがわかりやすく記述することができます。

    C#でif文、論理演算子(and/or/not)を使って分岐処理を実現しよう!


    いかがだったでしょうか。

    C#ではif文と論理演算子(and/or/not)を使って分岐処理を実現できます。使う頻度の高い構文になりますので、ぜひマスターし、思い通りのプログラムを作成してみましょう。

    FEnet.NETナビ・.NETコラムは株式会社オープンアップシステムが運営しています。
    株式会社オープンアップシステムロゴ

    株式会社オープンアップシステムはこんな会社です

    秋葉原オフィスには株式会社オープンアップシステムをはじめグループのIT企業が集結!
    数多くのエンジニアが集まります。

    秋葉原オフィスイメージ
    • スマホアプリから業務系システムまで

      スマホアプリから業務系システムまで

      スマホアプリから業務系システムまで開発案件多数。システムエンジニア・プログラマーとしての多彩なキャリアパスがあります。

    • 充実した研修制度

      充実した研修制度

      毎年、IT技術のトレンドや社員の要望に合わせて、カリキュラムを刷新し展開しています。社内講師の丁寧なサポートを受けながら、自分のペースで学ぶことができます。

    • 資格取得を応援

      資格取得を応援

      スキルアップしたい社員を応援するために資格取得一時金制度を設けています。受験料(実費)と合わせて資格レベルに合わせた最大10万円の一時金も支給しています。

    • 東証プライム上場企業グループ

      東証プライム上場企業グループ

      オープンアップシステムは東証プライム上場「株式会社オープンアップグループ」のグループ企業です。

      安定した経営基盤とグループ間のスムーズな連携でコロナ禍でも安定した雇用を実現させています。

    株式会社オープンアップシステムに興味を持った方へ

    株式会社オープンアップシステムでは、開発系エンジニア・プログラマを募集しています。

    年収をアップしたい!スキルアップしたい!大手の上流案件にチャレンジしたい!
    まずは話だけでも聞いてみたい場合もOK。お気軽にご登録ください。

    株式会社オープンアップシステムへのご応募はこちら↓
    株式会社オープンアップシステムへのご応募はこちら↓

    C#新着案件New Job