2日目のゴール
2日目のテーマは
「C# で“計算できる”“値を覚えておける”感覚をつかむこと」 です。
1日目は「文字を表示する」「変数に値を入れる」まで行きました。
今日はそこに「計算」と「少しだけ C# らしい書き方」を足していきます。
C# で足し算・引き算をしてみる
まずは一番シンプルな計算
いきなり難しいことはせず、「2 + 3」を C# にやらせてみます。
using System;
class Program
{
static void Main(string[] args)
{
int a = 2;
int b = 3;
int result = a + b;
Console.WriteLine("a の値は " + a);
Console.WriteLine("b の値は " + b);
Console.WriteLine("a + b の結果は " + result);
}
}
C#ここでやっていることを、ゆっくり分解します。
int a = 2;
…「整数を入れる箱 a に 2 を入れる」
int b = 3;
…「整数を入れる箱 b に 3 を入れる」
int result = a + b;
…「a と b を足した結果を、result という箱に入れる」
C# は、+ を見たら「足し算」として計算してくれます。
その結果を変数に入れておけば、あとから何度でも使えます。
引き算・掛け算・割り算も同じ
同じように、こう書けます。
int x = 10;
int y = 4;
int plus = x + y;
int minus = x - y;
int multiply = x * y;
int divide = x / y;
Console.WriteLine("x + y = " + plus);
Console.WriteLine("x - y = " + minus);
Console.WriteLine("x * y = " + multiply);
Console.WriteLine("x / y = " + divide);
C#ここで一つだけ注意があります。int 同士の割り算は「小数点以下が切り捨て」られます。
10 / 4 は、本当は 2.5 ですが、int で計算すると結果は 2 になります。
「整数同士の割り算は小数点以下が消える」
これは C# だけでなく、多くの言語で共通のルールです。
変数の「上書き」と「使い回し」を体感する
一度入れた値は、あとから変えられる
変数は「箱」なので、中身を入れ替えることができます。
int number = 5;
Console.WriteLine("最初の値: " + number);
number = 10;
Console.WriteLine("上書き後の値: " + number);
C#ここで大事なのは、「型は最初に決める」ということです。
int number = 5; で「整数用の箱 number」を作ったら、
そのあとで number = 10; のように「中身だけ」変えます。
もう一度 int number = ... と書く必要はありません。
むしろ書いてしまうと、「同じ名前の箱を二重に作ろうとしてエラー」になります。
計算結果で上書きしてみる
例えば、カウンターのような動きをさせてみます。
int count = 0;
Console.WriteLine("count = " + count);
count = count + 1;
Console.WriteLine("1 回増やしたあと: count = " + count);
count = count + 1;
Console.WriteLine("もう 1 回増やしたあと: count = " + count);
C#count = count + 1; は、
「今の count に 1 を足して、その結果をもう一度 count に入れる」
という意味です。
この書き方は、後で必ず何度も出てきます。
カウンター、スコア、残り回数など、
「少しずつ増える・減るもの」は全部この形です。
C# らしい「短い書き方」を一つだけ覚える
count++ は「count = count + 1」の省略形
さっきのカウンターを、C# らしく書くとこうなります。
int count = 0;
count++;
count++;
Console.WriteLine("count の値は " + count);
C#count++; は、
「count に 1 を足す」という意味です。
count = count + 1; とまったく同じですが、
短く書けるので、実際のコードではこちらがよく使われます。
1日目・2日目の段階では、
「count++ は count = count + 1 の短い版」
と覚えておけば十分です。
簡単な「合計金額アプリ」を作ってみる
例題:りんごとバナナの合計金額
少しだけ現実っぽい例をやってみましょう。
りんご 1 個 120 円
バナナ 1 本 80 円
りんご 3 個、バナナ 2 本買ったときの合計金額を計算するプログラムです。
using System;
class Program
{
static void Main(string[] args)
{
int applePrice = 120;
int bananaPrice = 80;
int appleCount = 3;
int bananaCount = 2;
int appleTotal = applePrice * appleCount;
int bananaTotal = bananaPrice * bananaCount;
int total = appleTotal + bananaTotal;
Console.WriteLine("りんごの合計: " + appleTotal + " 円");
Console.WriteLine("バナナの合計: " + bananaTotal + " 円");
Console.WriteLine("合計金額: " + total + " 円");
}
}
C#ここで意識してほしいのは、「意味のある名前をつける」ことです。
applePrice … りんごの単価appleCount … りんごの個数appleTotal … りんごの合計金額
というように、「何を表しているか」が名前から分かるようにしています。
C# はコンピュータに命令する言語ですが、
同時に「人間が読むための文章」でもあります。
名前を丁寧につけると、あとで自分で読み返すときに楽になります。
型(int / double)を少しだけ意識してみる
小数を扱いたくなったら double
2日目の段階では、
「整数は int、小数を扱いたくなったら double」
くらいの理解で十分です。
例えば、税込み価格を計算したいとします。
商品価格 1000 円
消費税率 10%(0.1)
using System;
class Program
{
static void Main(string[] args)
{
int price = 1000;
double taxRate = 0.1;
double tax = price * taxRate;
double total = price + tax;
Console.WriteLine("税額: " + tax);
Console.WriteLine("税込み価格: " + total);
}
}
C#ここでのポイントは、
price は整数なので inttaxRate は小数なので doubleprice * taxRate の結果も小数になるので double
という流れです。
「小数が出てきそうなら double を使う」
このくらいの感覚で、今は十分です。
2日目のミニまとめアプリ
「今日の合計勉強時間」を出すプログラム
最後に、今日の学習時間を計算するミニアプリを作ってみます。
例えば、
午前に 25 分、午後に 35 分勉強したとします。
using System;
class Program
{
static void Main(string[] args)
{
int morningMinutes = 25;
int afternoonMinutes = 35;
int totalMinutes = morningMinutes + afternoonMinutes;
Console.WriteLine("午前の勉強時間: " + morningMinutes + " 分");
Console.WriteLine("午後の勉強時間: " + afternoonMinutes + " 分");
Console.WriteLine("合計勉強時間: " + totalMinutes + " 分");
}
}
C#ここまで来ると、もう立派に「自分の生活に関係する数字」を
C# で扱えている状態です。
2日目で絶対に押さえておきたいポイント
計算と変数の“型”をセットで覚える
今日のキーワードを整理すると、こうなります。
整数を扱う箱は int
文字を扱う箱は string
小数を扱いたくなったら double
足し算:+
引き算:-
掛け算:*
割り算:/
変数の上書き:number = number + 1;
短い書き方:number++;
そして、結果を画面に出すのは、いつもこれです。
Console.WriteLine(...);
C#もし余裕があればやってみてほしいこと
自分の「1日のスケジュール」を数字にしてみる
例えば、
睡眠時間(時間)
仕事・学校の時間
趣味の時間
などを int で変数にして、
「合計何時間か」「残り何時間自由時間があるか」
を計算してみてください。
2日目のまとめ
1日目は「C# で文字を出す」でした。
2日目はそこに「数字を扱う」「計算する」「変数を上書きする」が加わりました。
ここまでできれば、
次の「条件分岐(もし〜なら)」にスムーズに進めます。
C# は、
「値を覚える(変数)」
「計算する」
「結果を表示する」
この3つの組み合わせで、どんどん表現力が増えていきます。
今日はそのうちの「計算」の扉を開けた日です。
