C# 中 Math.Round 数学函数

在 C# 中,Math.Round 是一个数学函数,用于对一个浮点数进行四舍五入操作。它接受一个浮点数作为输入,并返回一个最接近输入值的整数或指定小数位数的浮点数。

Math.Round 方法有多个重载,其中最常用的重载有以下两种形式:

  1. Math.Round(double value): 这个重载将输入的浮点数 value 四舍五入为最接近的整数,并返回一个整数值。

  2. Math.Round(double value, int digits): 这个重载将输入的浮点数 value 四舍五入到指定的小数位数 digits,并返回一个浮点数值。

下面是一些具体的例子来说明 Math.Round 的使用:

double number1 = 3.49;
double number2 = 3.51;
double number3 = 3.14159;

int rounded1 = (int)Math.Round(number1); // rounded1 = 3
int rounded2 = (int)Math.Round(number2); // rounded2 = 4

double rounded3 = Math.Round(number3, 2); // rounded3 = 3.14

在上面的例子中,number1 被四舍五入为最接近的整数,即 3。number2 被四舍五入为最接近的整数,即 4。number3 被四舍五入到小数点后两位,即 3.14。
在这里插入图片描述

需要注意的是,Math.Round 方法返回的结果类型取决于重载的使用方式。如果使用的是不带小数位数参数的重载,结果将是一个整数类型;如果使用的是带小数位数参数的重载,结果将是一个浮点数类型。


此外,Math.Round 方法还有其他重载形式,如 Math.Round(decimal value)Math.Round(double value, MidpointRounding mode),它们提供了更多的灵活性来满足不同的舍入需求。

  1. Math.Round(decimal value)
decimal number = 4.5678m;
decimal rounded = Math.Round(number); // rounded = 5

在这个例子中,number 是一个 decimal 类型的值,通过 Math.Round 方法进行四舍五入后,得到最接近的整数值 5。

  1. Math.Round(double value, MidpointRounding mode)
double number = 3.5;
double rounded1 = Math.Round(number, MidpointRounding.ToEven); // rounded1 = 4
double rounded2 = Math.Round(number, MidpointRounding.AwayFromZero); // rounded2 = 4 (向远离零的方向舍入)

在这个例子中,number 是一个 double 类型的值。MidpointRounding 是一个枚举类型,用于指定舍入的方式。ToEven 表示使用标准的四舍五入规则,当小数部分恰好为 0.5 时,舍入到最接近的偶数。AwayFromZero 表示向远离零的方向舍入,即始终远离零舍入到最接近的整数。在上面的例子中,rounded1rounded2 分别演示了这两种舍入方式。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/431112.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

就业班 2401--3.5 Linux Day11--DNS解析

DNS域名解析服务 少壮不努力,老大徒伤悲。一、 1.DNS介绍 DNS 是域名系统 (Domain Name System) 的缩写,是因特网的一项核心服务,它作为可以将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,…

「项目实践」如何实现导购推荐“千人千面”

前言 在电商背景下,为用户提供精准的导购推荐不仅能极大提升购物体验,也成为推动业务增长的关键驱动力。随着人工智能和数据科学的快速发展,实现“千人千面”的个性化推荐已不再是无法触及的梦想。如何在众多商品中准确捕捉用户的偏好&#…

进口及国内细胞分析仪厂家名录大全-贝克曼、安捷伦、希森美康、迈瑞.....

流式细胞仪是一种测量层流中细胞的设备(细胞仪),其通过将每个细胞排列在鞘液中,加以激光束照射,可测量散射光和荧光,从而获得有关每个细胞的信息,包含细胞结构(如大小、粒度、表面积…

Java知识点总结(二)

ID生成策略 主键自增id 主键自动增长,不用手工设值、数字型,占用空间小、检索非常有利、有顺序,不会重复,但在迁移旧数据是会出现id冲突 UUID 基于时间,计数器和地址生成32位的id redis生成id 原子性自增,并…

记录一次排查负载均衡不能创建的排查过程

故障现象,某云上,运维同事在创建负载均衡的时候,发现可以创建资源,但是创建完之后,不显示对应的负载均衡。 创建负载均衡时候,按f12发现console有如下报错 后来请后端网络同事排查日志发现,是后…

探秘X-XSS-Protection头对抗跨站脚本攻击

欢迎来到我的博客,代码的世界里,每一行都是一个故事 探秘X-XSS-Protection头对抗跨站脚本攻击 前言XSS攻击的威胁X-XSS-Protection头的作用X-XSS-Protection头的配置报告模式(Report-Only)攻击与绕过X-XSS-Protection的方法 前言 …

(学习日记)2024.03.04:UCOSIII第六节:main函数+前六节总结

写在前面: 由于时间的不足与学习的碎片化,写博客变得有些奢侈。 但是对于记录学习(忘了以后能快速复习)的渴望一天天变得强烈。 既然如此 不如以天为单位,以时间为顺序,仅仅将博客当做一个知识学习的目录&a…

android开发教程视频,android组件化和插件化

第一阶段:Android 基础知识回顾: 回顾Android 开发编程,深入理解Android系统原理和层次结构,深入分析Handler源码和原理;回顾Java,C/C,Kotlin、dart 在Android开发中必用的语言,熟悉…

DQL语言学习(2024/3/5)one

1.基础查询: select 查询列表 from 表名; 查询列表可以是:①表中的字段、②常量值、③表达式、④函数 ①查询表中的单个字段,多个字段,所有字段 select *from 表名; ③查询表达式: select 100*98; ④…

软件设计师10--计算机组成与体系结构章节回顾

软件设计师10--计算机组成与体系结构章节回顾 章节重要内容考情分析 章节重要内容 考情分析

css使用

一、什么是CSS <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title><style>div{color: red;}</style> </head> <body><div>Hello CSS</div></…

MySQL——性能调优

性能调优&#xff08;重要&#xff09; SQL 优化的目的 减少磁盘 IO&#xff1a;尽可能避免全表扫描、尽量使用索引、尽量使用覆盖索引减少回表操作减少 CPU 和内存的消耗&#xff0c;尽可能减少排序、分组、去重之类的操作&#xff0c;尽量减少事务持有锁的时间 优化途径&…

QEMU设备直通pass through的地址映射转换

[内核:HVA]->[QEMU:HVA]的mmap地址映射 $ sudo cat /proc/2047239/maps | grep -i vfio address perms offset dev inode pathname 7f4b5444a000-7f4b5445a000 rw-s 9da50000 00:0e 13037 anon_inode:[vfi…

稀碎从零算法笔记Day7-LeetCode:罗马数字转整数

题型&#xff1a;字符串转化、找规律 链接&#xff1a;13. 罗马数字转整数 - 力扣&#xff08;LeetCode&#xff09; 来源&#xff1a;LeetCode 题目描述 给定一个数组 prices &#xff0c;它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。 你只能选择 某一天 …

【HTML】day01

列表 作用&#xff1a;布局内容排序整齐的区域。 列表分类&#xff1a;无序列表、有序链表、定义列表 无序列表 <ul><li>test</li><li>test</li><li>test</li><li><h1>h1</h1></li></ul><!DOCTYPE…

DolphinScheduler——奇富科技的调度实践

目录 一、技术架构 二、业务挑战 2.1 调度任务量大 2.2 运维复杂 2.3 SLA要求高 三、调度优化实践 3.1 重复调度 3.2 漏调度 3.3 Worker服务卡死 3.4 任务重复运行 四、服务监控 4.1 方法耗时监控 4.2 任务调度链路监控 五、用户收益 原文大佬的这篇调度系统案例…

【Gitee】创建第一个仓库并提交第一次代码

目录 第一步&#xff1a;注册登录 第二步&#xff1a;创建第一个仓库 1、我的工作台 → 创建我的仓库 2、填写内容 3、创建 第三步&#xff1a;第一次提交代码 1、参考资料 2、操作 2.1 idea创建项目 2.2 项目内容推送至远程 最后&#xff1a;平台相关资料库 第一步…

1.Zookeeper理论基础

1.Zookeeper的基本概念 是一个分布式应用协调框架 &#xff0c;java编写的。客户端 /服务端 的架构模式。CP设计(一致性&#xff0c;分区容错) 它主要是用来解决分布式应用中经常遇到的一些数据管理问题&#xff0c;如&#xff1a;服务注册服务、状态同步服务、集群管理、分布…

解决物理机装不上VMnet1和VMnet8的虚拟网卡问题

问题描述&#xff1a; 博主在使用虚拟机时&#xff0c;发现物理机的ping命令连接不上虚拟机&#xff0c;导致xshell软件也连接不上&#xff0c;最后发现问题是更改适配器设置中没有虚拟机的网卡&#xff08;VMnet1和VMnet8&#xff09;&#xff1a; 方法一&#xff1a; 博主搜…

虽然写了不少前端代码,但是我真没搞懂什么是 JavaScript

追溯到 1998 年第一次拥有个人电脑开始&#xff0c;JavaScript 可能是我最早接触的编程语言&#xff0c;不过这么多年过去了&#xff0c;我现在又变得迷糊了&#xff0c;我反倒搞不清楚什么是 JavaScript 了。 一、历史 JavaScript最早是由Brendan Eich在1995年发明的。当时&…