2021年11月24日
川俣晶の縁側ソフトウェアnew_C#入門・全キーワード明快解説!total 1062 count

+/-/*\///%: 四則演算プラス剰余・全ての計算の基本のキ

Written By: 川俣 晶連絡先

この章のテーマ §

 四則演算と剰余演算の方法を学習します。これらの計算が目的のプログラムを作成することは希ですが、他の処理の手段として使われることはとても多いと言えます。

前提知識 §

Console.WriteLineメソッド, 文字列の基礎, 変数の基礎, int型, double型

解説 §

 C#で足し算を行う方法はいろいろあります。

 最もシンプルに行うには"+"演算子を使って"x+y"のように書きます。

 結果を変数に代入したければ、"r=x+y;"のように書きます。

 他の演算も同様で、"+"の代わりに他の記号を使います。引き算は"-"、かけ算は"*"、割り算は"/"、剰余は"%"を使用します。

 ただし、これらの演算は様々な制約の中で行われますので、意図した通りの結果にならない場合があります。たとえば、整数型の割り算で小数点以下の結果を得ることはできません。オーバーフローチェックが行われないコンテキストでは、計算が型の最大値を超えても意味不明の値のまま計算が継続されます。

罠の数々 §

  • 足し算の"+"には文字列を連結するという機能もある。混同しないようにしよう
  • サンプルソースの実行結果を見ると、整数(int)と実数(double)では割り算のみ結果が違うことが分かる。この計算は割り切れないので小数点以下の値を発生させるが、整数型は小数点以下を扱えないので消えてしまう
  • 剰余とは整数の計算でのみ意味を持つ演算なので、実は実数の剰余を得る処理はあまり意味がない。実際には整数の剰余を求めているだけである
  • これらの演算子は四則演算を行う唯一の方法ではない。1を足すだけなら++演算子の方が便利ということも多いし、多数のデータの合計が欲しい時はLINQのSumメソッドを使うこともできる (これらの機能はここで理解しなくても良いが、いずれそれらを学ぶときに少しだけ思い出そう)

参考リンク §

算術演算子 (C# リファレンス)

サンプルソース: FourArithmeticOperations §

int a = 10;

int b = 3;

double c = 10.0;

double d = 3.0;

Console.WriteLine($"a+b={a + b}");

Console.WriteLine($"c+d={c + d}");

Console.WriteLine($"a-b={a - b}");

Console.WriteLine($"c-d={c - d}");

Console.WriteLine($"a*b={a * b}");

Console.WriteLine($"c*d={c * d}");

Console.WriteLine($"a/b={a / b}");

Console.WriteLine($"c/d={c / d}");

Console.WriteLine($"a%b={a % b}");

Console.WriteLine($"c%d={c % d}");

実行結果 §

a+b=13

c+d=13

a-b=7

c-d=7

a*b=30

c*d=30

a/b=3

c/d=3.3333333333333335

a%b=1

c%d=1

リポジトリ §

https://github.com/autumn009/CSharpPrimer2

練習問題 §

 以下のプログラムの実行結果を予測してみよう。

Console.WriteLine(2*3+4*5);

  1. 2345
  2. 26
  3. 50
  4. 70
  5. エラー

[[解答]]

Facebook

キーワード【 川俣晶の縁側ソフトウェアnew_C#入門・全キーワード明快解説!
【new_C#入門・全キーワード明快解説!】の次のコンテンツ
2021年
11月
25日
配列とインデクサ: データをまとめて処理するぞ
3days 0 count
total 1119 count
【new_C#入門・全キーワード明快解説!】の前のコンテンツ
2021年
11月
23日
const: 書き換えは絶対にできません!
3days 0 count
total 791 count

このコンテンツを書いた川俣 晶へメッセージを送る

[メッセージ送信フォームを利用する]

メッセージ送信フォームを利用することで、川俣 晶に対してメッセージを送ることができます。

この機能は、100%確実に川俣 晶へメッセージを伝達するものではなく、また、確実に川俣 晶よりの返事を得られるものではないことにご注意ください。

このコンテンツへトラックバックするためのURL

https://mag.autumn.org/tb.aspx/20211124101725
サイトの表紙【new_C#入門・全キーワード明快解説!】の表紙【new_C#入門・全キーワード明快解説!】のコンテンツ全リスト 【new_C#入門・全キーワード明快解説!】の入手全リスト 【new_C#入門・全キーワード明快解説!】のRSS1.0形式の情報このサイトの全キーワードリスト 印刷用ページ

管理者: 川俣 晶連絡先

Powered by MagSite2 Version 0.36 (Alpha-Test) Copyright (c) 2004-2021 Pie Dey.Co.,Ltd.