C# 四捨五入をする

C#で、Math.Roundメソッドを使用して、四捨五入をするサンプルコードを記述してます。
環境
- OS windows10 pro 64bit
- Microsoft Visual Studio Community 2019 Version 16.7.1
Math.Roundメソッド使い方
Math.Floorメソッドを使用すると、四捨五入を行うことが可能です。
1 2 3 4 5 6 7 8 9 10 |
double num = 1.527; // 小数第1位で四捨五入 2 Console.WriteLine(Math.Round(num, MidpointRounding.AwayFromZero)); // 小数第2位で四捨五入 1.5 Console.WriteLine(Math.Round(num, 1,MidpointRounding.AwayFromZero)); // 小数第3位で四捨五入 1.53 Console.WriteLine(Math.Round(num, 2,MidpointRounding.AwayFromZero)); |
四捨五入する対象が「5」の場合の、結果が偶数になる方に丸める「銀行丸め」をしたい場合は「MidpointRounding.AwayFromZero」を指定しません。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
double num = 2.5; // 小数第1位で四捨五入 3 Console.WriteLine(Math.Round(num, MidpointRounding.AwayFromZero)); // 小数第1位で四捨五入 2 Console.WriteLine(Math.Round(num)); double num = 1.5; // 小数第1位で四捨五入 2 Console.WriteLine(Math.Round(num, MidpointRounding.AwayFromZero)); // 小数第1位で四捨五入 2 Console.WriteLine(Math.Round(num)); |
サンプルコード
以下は、
textboxに入力した値を、少数第一位を四捨五入して、別のtextboxに表示する
サンプルコードとなります。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace FormTestApp { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { // textBox1.Textの値を取得 double num = Convert.ToDouble(textBox1.Text); // 四捨五入 int result = (int)Math.Round(num, MidpointRounding.AwayFromZero); // textBox2.Textに値を表示 textBox2.Text = Convert.ToString(result); } } } |
実行結果を確認すると、少数以下が四捨五入されて表示されることが確認できます。

-
前の記事
javascript 指定した画像のサイズを変更する 2020.10.05
-
次の記事
javascript 文字データをドラッグ&ドロップする 2020.10.05
コメントを書く