if文の使い方その7

今回のC#プログラミング学習も、前回の続きで、分岐処理のif文を学んでいきます。

プログラム例その1

まずは、一つ目のプログラム例から見ていきましょう。

ソースコード

プログラム例その1のソースコードはこちらです。

using System;

namespace Sample
{
	internal class Program
	{
		static void Main(string[] args)
		{
			bool bFlag;

			Console.Write("boolean型でif文を使ってみます。");
			Console.ReadLine();

			bFlag = true;
			Console.Write("! + " + bFlag + "のときはif文が");
			if ( ! bFlag )
			{
				Console.Write("成立しました。");
			}
			else
			{
				Console.Write("成立しませんでした。");
			}
			Console.ReadLine();

			bFlag = false;
			Console.Write("! + " + bFlag + "のときはif文が");
			if ( ! bFlag )
			{
				Console.Write("成立しました。");
			}
			else
			{
				Console.Write("成立しませんでした。");
			}
			Console.ReadLine();
		}
	}
}

このプログラムをダウンロードするにはここをクリックします。

ビルドと実行

ダウンロードしたZIPファイルを解凍して、「Sample.sln」を開くとVisualStudioが立ち上がってきます。

ビルドメニューから「ソリューションのビルド」を選択し、ビルドします。

VisualStudioでのビルド成功画面

ビルドが成功したら、F5キーを押してプログラムを動かします。

プログラム実行画面

プログラムが起動すると、「boolean型でif文を使ってみます。」という文字列が表示されるので、Enterキーを押します。

一つ目のif文の結果画面

すると、「! + Trueのときはif文が成立しませんでした。」と表示されるので、Enterキーを押します。

二つ目のif文の結果画面

すると次は、「! + Falseのときはif文が成立しました。」と表示されるので、Enterキーを押すとプログラムが終了します。

解説

このプログラムは、前回使ったプログラムを一部改造したものです。

なので見比べていただけるとすぐわかるんですが、さっさと答えを言ってしまうと、if文のカッコの中に「!」が付いています。

bFlag = true;
Console.Write("! + " + bFlag + "のときはif文が");
if ( ! bFlag )
{
	Console.Write("成立しました。");
}
else
{
	Console.Write("成立しませんでした。");
}
Console.ReadLine();

if文のカッコの中つまり、条件式の頭に「!」を付けただけなんですが、前回のプログラムの実行結果の逆になりました。

このことからわかるように、「!」は条件式の結果を逆にする効果があります。

プログラム例その2

次は、二つ目のプログラム例を見ていきます。

ソースコード

プログラム例その2のソースコードはこちらです。

using System;

namespace Sample
{
	internal class Program
	{
		static void Main(string[] args)
		{
			Console.Write(" 0 を入力:");
			int nNumber = int.Parse( Console.ReadLine() );

			// 入力された値を調べる
			if (nNumber != 0)
			{
				Console.Write("ゼロ以外が入力されました");
			}
			else
			{
				Console.Write("ゼロが入力されました");
			}

			Console.ReadLine();
		}
	}
}

プログラム例をダウンロードするにはここをクリックします。

ビルドと実行

ダウンロードしたZIPファイルを解凍して、「Sample.sln」を開くとVisualStudioが立ち上がってきます。

ビルドメニューから「ソリューションのビルド」を選択し、ビルドします。

VisualStudioでのビルド成功画面

ビルドが成功したら、F5キーを押してプログラムを動かします。

プログラム起動画面

プログラムが立ち上がると、「 0 を入力:」と表示されるので、「0」を入力しEnterキーを押します。

0を入力しEnterキーを押した画面

すると「ゼロが入力されました」と表示されるので、Enterキーを押すとプログラムが終了します。

今回は分岐処理なので、もう一度F5キーを押してプログラムを立ち上げます。

今度は「1」を入力してEnterキーを押します。

1を入力しEnterキーを押した画面

すると、今度は「ゼロ以外が入力されました」と表示されるので、Enterキーを押すとプログラムが終了します。

解説

このプログラムも以前出てきたものを改造したものです。

if (nNumber != 0)
{
	Console.Write("ゼロ以外が入力されました");
}
else
{
	Console.Write("ゼロが入力されました");
}

実行結果だけ見れば以前と変わりませんが、if文の条件式を、「==」から「!=」にすることで意味が逆になるので、表示される文字列も、上下で入れ替えています。

まとめ

if文とその条件式は、いろいろな書き方があるので、しっかり覚えておきましょう。