C#の演算子とMathクラス
このレッスンでは、算術・代入・比較・論理演算子と、Mathクラスの数学関数をC#で使います。
はじめに
演算子は値を組み合わせて式を作ります。C#はおなじみの数学のルールにしたがいますが、初心者がよく驚く点が1つあります。整数どうしを割ると、小数部分は切り捨てられるのです。
17 / 5は両方がintなので3になり、17 / 5.0は片方が小数なので3.4になります。+=や*=のような複合代入演算子は、変数の値をその場で更新します。比較や論理演算子&&、||は常にbool値を返し、MathクラスにはPow、Round、Sqrtなどの関数があります。
実行できる C# の例
C#
Program.cs
using System;
class Program
{
static void Main()
{
int a = 17, b = 5;
Console.WriteLine($"a + b = {a + b}");
Console.WriteLine($"a - b = {a - b}");
Console.WriteLine($"a * b = {a * b}");
Console.WriteLine($"a / b = {a / b}"); // int / int drops the fraction
Console.WriteLine($"a % b = {a % b}"); // remainder
Console.WriteLine($"a / 5.0 = {a / 5.0}"); // a double operand keeps it
int total = 10;
total += 5;
total *= 2;
Console.WriteLine($"total = {total}");
int count = 0;
count++;
Console.WriteLine($"count = {count}");
// Comparison and logical operators produce bool values.
Console.WriteLine($"a > b: {a > b}, a == 17: {a == 17}");
Console.WriteLine($"a > 10 && b > 10: {a > 10 && b > 10}");
Console.WriteLine($"a > 10 || b > 10: {a > 10 || b > 10}");
// Math holds common functions.
Console.WriteLine($"Math.Pow(2, 10) = {Math.Pow(2, 10)}");
Console.WriteLine($"Math.Round(3.14159, 2) = {Math.Round(3.14159, 2)}");
}
}
a + b = 22
a - b = 12
a * b = 85
a / b = 3
a % b = 2
a / 5.0 = 3.4
total = 30
count = 1
a > b: True, a == 17: True
a > 10 && b > 10: False
a > 10 || b > 10: True
Math.Pow(2, 10) = 1024
Math.Round(3.14159, 2) = 3.14デバッガーで練習する
大事な代入や条件にブレークポイントを置いて Debug を押し、次の行に進む前にローカル変数の値を確かめましょう。
チャレンジで練習する
このレッスンの内容を使って実際の問題を解きましょう。各チャレンジはブラウザで動き、すぐにテストされ、AI のレビューも受けられます。
すべてのチャレンジ