Day 10 のゴールと全体イメージ
Day 10 は、第1章の総合演習として、ここまで学んできた 基本文法をひとつのプログラムにまとめて使う日です。 題材は「簡易プロフィール管理プログラム」です。
このプログラムでは、次の機能を実装していきます。
- 名前入力(文字列)
- 年齢入力(数値)
- 職業入力(文字列)
- 趣味入力(文字列)
- データ表示(文字列補間・整形)
- 年齢によるメッセージ変更(条件分岐
if)
コンソールアプリとして、ユーザーに質問しながらプロフィールを作り、最後にまとめて表示する流れを作っていきます。
プログラムの仕様を日本語で整理する
まずは「何をするプログラムか」を言葉で決める
コードを書く前に、日本語で仕様を整理しておきます。
- ユーザーに「名前」を入力してもらう。
- ユーザーに「年齢」を入力してもらう。
- ユーザーに「職業」を入力してもらう。
- ユーザーに「趣味」を入力してもらう。
- 入力された情報を、見やすい形でまとめて表示する。
- 年齢に応じて、メッセージを変える。
- 0 歳未満 → エラーメッセージ
- 0〜12 歳 → 「子どもですね!」
- 13〜19 歳 → 「ティーンですね!」
- 20〜64 歳 → 「大人ですね!」
- 65 歳以上 → 「シニアですね!」
この仕様を、そのまま C# のコードに落とし込んでいきます。
ステップ1:プロフィール項目を変数で用意する
どんなデータを扱うかを決める
今回扱うデータは次の4つです。
- 名前:
string - 年齢:
int - 職業:
string - 趣味:
string
これをコード上では、次のような変数として扱います。
string name; // 名前
int age; // 年齢
string job; // 職業
string hobby; // 趣味
C#ポイント:
- 「文字列」は
string、「整数」はintを使います。 - まずは「どんな情報を持つか」を変数としてイメージすることが大切です。
ステップ2:Console.ReadLine() でプロフィールを入力してもらう
名前・職業・趣味は文字列としてそのまま受け取る
コンソールからの入力は、すべて Console.ReadLine() で受け取ります。 名前・職業・趣味は文字列のままでよいので、そのまま string に代入します。
using System;
class Program
{
static void Main(string[] args)
{
// 名前の入力
Console.WriteLine("名前を入力してください:");
string name = Console.ReadLine();
// 職業の入力
Console.WriteLine("職業を入力してください:");
string job = Console.ReadLine();
// 趣味の入力
Console.WriteLine("趣味を入力してください:");
string hobby = Console.ReadLine();
Console.ReadLine(); // ここではまだ表示せずに終了
}
}
C#年齢は数値として扱いたいので変換する
年齢は「数値」として扱いたいので、文字列から int に変換します。
using System;
class Program
{
static void Main(string[] args)
{
// 年齢の入力
Console.WriteLine("年齢を入力してください:");
string ageText = Console.ReadLine(); // まずは文字列として受け取る
// 文字列を int に変換します(簡略化のため Parse を使用)
int age = int.Parse(ageText);
Console.ReadLine();
}
}
C#重要ポイント:
Console.ReadLine()は必ず文字列(string)を返します。- 数値として扱いたい場合は、
int.Parseやint.TryParseで変換します。
ステップ3:入力されたデータをまとめて表示する
文字列補間で「プロフィール表示」を作る
入力されたデータを、見やすい形でまとめて表示してみます。
using System;
class Program
{
static void Main(string[] args)
{
Console.WriteLine("名前を入力してください:");
string name = Console.ReadLine();
Console.WriteLine("年齢を入力してください:");
string ageText = Console.ReadLine();
int age = int.Parse(ageText);
Console.WriteLine("職業を入力してください:");
string job = Console.ReadLine();
Console.WriteLine("趣味を入力してください:");
string hobby = Console.ReadLine();
// プロフィール表示
Console.WriteLine();
Console.WriteLine("=== プロフィール ===");
Console.WriteLine($"名前:{name}");
Console.WriteLine($"年齢:{age} 歳");
Console.WriteLine($"職業:{job}");
Console.WriteLine($"趣味:{hobby}");
Console.ReadLine();
}
}
C#ポイント:
$"名前:{name}"のように、文字列補間を使うとコードが読みやすくなります。- 「見出し」を付けることで、コンソール画面でも情報が整理されて見えます。
ステップ4:年齢によるメッセージ変更(if / else if / else)
年齢に応じてメッセージを変えるロジックを考える
仕様で決めた年齢によるメッセージは次のとおりでした。
- 0 歳未満 → エラーメッセージ
- 0〜12 歳 → 「子どもですね!」
- 13〜19 歳 → 「ティーンですね!」
- 20〜64 歳 → 「大人ですね!」
- 65 歳以上 → 「シニアですね!」
これを if / else if / else で書いていきます。
// 年齢によるメッセージ
string ageMessage;
if (age < 0)
{
ageMessage = "年齢は 0 以上を入力してください。";
}
else if (age <= 12)
{
ageMessage = "子どもですね!";
}
else if (age <= 19)
{
ageMessage = "ティーンですね!";
}
else if (age <= 64)
{
ageMessage = "大人ですね!";
}
else
{
ageMessage = "シニアですね!";
}
C#重要ポイント:
- 条件は「範囲が重ならないように」設計します。
- 上から順番に評価され、最初に
trueになったブロックだけが実行されます。 - メッセージを変数
ageMessageに入れておくと、後でまとめて表示しやすくなります。
ステップ5:総合版コード(第1章総合演習)
ここまでの要素をすべて組み合わせる
Day 10 の総合演習として、「簡易プロフィール管理プログラム」の完成版例を示します。 コメントを多めに入れて、初心者の方でも読みやすい形にしています。
using System;
class Program
{
static void Main(string[] args)
{
// 名前の入力
Console.WriteLine("名前を入力してください:");
string name = Console.ReadLine(); // ユーザーの名前(文字列)
// 年齢の入力
Console.WriteLine("年齢を入力してください:");
string ageText = Console.ReadLine(); // まずは文字列として受け取る
// 文字列を int に変換します
// ※本来は TryParse でエラーチェックするのが安全ですが、
// ここでは第1章の総合演習として簡略化しています。
int age = int.Parse(ageText);
// 職業の入力
Console.WriteLine("職業を入力してください:");
string job = Console.ReadLine();
// 趣味の入力
Console.WriteLine("趣味を入力してください:");
string hobby = Console.ReadLine();
// 年齢によるメッセージを決めます
string ageMessage;
if (age < 0)
{
ageMessage = "年齢は 0 以上を入力してください。";
}
else if (age <= 12)
{
ageMessage = "子どもですね!";
}
else if (age <= 19)
{
ageMessage = "ティーンですね!";
}
else if (age <= 64)
{
ageMessage = "大人ですね!";
}
else
{
ageMessage = "シニアですね!";
}
// プロフィールを表示します
Console.WriteLine();
Console.WriteLine("=== 簡易プロフィール管理プログラム ===");
Console.WriteLine($"名前:{name}");
Console.WriteLine($"年齢:{age} 歳");
Console.WriteLine($"職業:{job}");
Console.WriteLine($"趣味:{hobby}");
Console.WriteLine();
Console.WriteLine($"年齢メッセージ:{ageMessage}");
// 画面がすぐ閉じないように待機します
Console.WriteLine();
Console.WriteLine("Enter キーを押すと終了します。");
Console.ReadLine();
}
}
C#このコードの中には、第1章で学んできた要素が詰まっています。
- 変数(
string,int) - コンソール入力(
Console.ReadLine()) - 型変換(
int.Parse) - 文字列補間(
$"...") - 条件分岐(
if / else if / else)
「簡易プロフィール管理」という具体的な題材に乗せることで、 バラバラだった知識が「ひとつの流れ」としてつながっていきます。
もう一歩:年齢メッセージを switch 式で書いてみる
Day 9 で学んだ switch 式を使うと、年齢メッセージを別の書き方で表現することもできます。 少し応用ですが、イメージをつかむにはちょうどよい題材です。
// switch 式を使った年齢メッセージ(C# の新しい書き方)
string ageMessage = age switch
{
< 0 => "年齢は 0 以上を入力してください。",
<= 12 => "子どもですね!",
<= 19 => "ティーンですね!",
<= 64 => "大人ですね!",
_ => "シニアですね!"
};
C#ポイント:
age switch { ... }の中で、「パターン」に応じてメッセージを返しています。if / else ifと同じロジックを、別のスタイルで書けることが分かります。
Day 10 のまとめ
Day 10 は、第1章の総合演習として、
- 名前・年齢・職業・趣味の入力
- コンソールからの文字列入力と数値変換
- 変数によるデータ管理
- 文字列補間による見やすい表示
- 年齢によるメッセージ変更(条件分岐)
をひとつの「簡易プロフィール管理プログラム」にまとめました。
ここまでで、
- 「ユーザーから入力を受け取る」
- 「データを変数に保持する」
- 「条件に応じてメッセージを変える」
- 「結果を整えて表示する」
という、コンソールアプリの基本的な流れを一通り体験できています。
ぜひ、
- メッセージや判定条件を自分なりにアレンジしてみる
- 項目を増やして「自己紹介カード」風にしてみる
- 年齢メッセージを
switch式に書き換えてみる
といった工夫をしながら、「コードで自分のアイデアを形にする感覚」を育てていってください。

