C# 小数位修约(保留小数位有效数位)
实现代码:
/// <summary>
/// 小数位修约 -- 四舍六入5成双,至少保留一位有效位(四舍六入五成双)
/// 数值0.00512,保留2位,修约为0.005;0.00025修约保留3位,修约后0.0002;
/// </summary>
/// <param name="modifyValue">修约值</param>
/// <param name="degit">保留位数</param>
/// <returns></returns>
public static string CalcValue(decimal modifyValue, int? degit){decimal calValue = 0;int degitNotNull = degit ?? 2;if (Math.Abs(modifyValue) >= 1){calValue = Math.Round(modifyValue, degitNotNull);}//按此修约为0则至少保留1位有效位数if (calValue == 0 && modifyValue != 0){string value = modifyValue.ToString();//从小数点后value = value.Substring(value.IndexOf(".") + 1);for (int i = 0; i < value.Length; i++){bool zero = value.Substring(i, 1) == "0" ? true : false;if (!zero){if ((i + 1) < degitNotNull){calValue = Math.Round(modifyValue, degitNotNull);}else{calValue = Math.Round(modifyValue, (i + 1));}break;}}return calValue.ToString();}else{return calValue.ToString("F" + degitNotNull);}
}
C# 小数位修约(保留小数位有效数位)相关推荐
- Java 保留小数位时整数位0丢失问题
Java 保留小数位时整数位0丢失问题 Java 保留三位小数位 推荐写法: java.text.DecimalFormat df =new java.text.DecimalFormat(" ...
- python中保留小数_python保留小数位的三种实现方法
前言 保留小数位是我们经常会碰到的问题,尤其是刷题过程中.那么在python中保留小数位的方法也非常多,但是笔者的原则就是什么简单用什么,因此这里介绍几种比较简单实用的保留小数位的方法: 方法一:fo ...
- python取三位小数_python保留小数位的三种实现方法
更多python教程请到: 菜鸟教程www.piaodoo.com 人人影视www.sfkyty.com 16影视www.591319.com 星辰影院www.591319.com 前言 保留小数位是 ...
- 将python中的小数直接进位的函数_python保留小数位的三种实现方法
python保留小数位的三种实现方法 前言 保留小数位是我们经常会碰到的问题,尤其是刷题过程中.那么在python中保留小数位的方法也非常多,但是笔者的原则就是什么简单用什么,因此这里介绍几种比较简单 ...
- SAP License:税额保留小数位差异处理
(1)问题 由于SAP系统采用2位小数,增值税采用4位小数,发票校验时出现差异. (2)应用条件 通过手工调整,不通过系统的自动计算功能. (3)具体操作 (1)更改税码,事务代码FTXP. (2)将 ...
- python round保留小数位_Python-其他-round()保留小数位时遇到的问题
最近有一个需求,原有整数计算,改成小数计算,保留一位小数. 于是按照需求,将数据结构由 int 改为 float ,计算时采用round()方法来保留小数位. 第一版代码如下: a = 0.10000 ...
- java 格式化 浮点数_DecimalFormat的用法 Java 浮点数 Float Double 小数 格式化 保留小数位后几位等...
DecimalFormat的用法 Java 浮点数 Float Double 小数 格式化 保留小数位后几位等 DecimalFormat df = new DecimalFormat(); dou ...
- 数值修约程序(包括运算过程有效数字保留,Python3实现)
数值修约程序(包括运算过程有效数字保留,Python3实现) 2022.09更新:考虑到需要用到这个程序的朋友很可能没有计算机基础(这也是我只放在csdn而没有放github的原因),我稍微加了一点注 ...
- 四舍六入五成双并保留一位有效位-数据修约
C# /// <summary>/// 数据修约 -- 四舍六入5成双,至少保留一位有效位/// 数值0.00512,保留2位,修约为0.01/// </summary>/// ...
最新文章
- 怎么用python创建文件-如何用Python创建生成xml文档文件的方法
- 【Linux】一步一步学Linux——tty命令(240)
- Horizon View 6-客户端连接虚拟桌面⑹
- 音视频技术开发周刊 | 188
- python3基础学习(双色球随机生成器)
- Proxmox VE 安装、配置、使用之第二章 Proxmox VE 的安全性
- JAXB和java.util.Map
- GROUP BY 和SUBSTRING 的配合使用
- 环形单链表的约瑟夫问题
- Kafka 环境部署与配置详解
- 解决“ValueError: Stop argument for islice() must be None or an integer: 0 <= x <= sys.maxsize.”
- Ryu学习总结(持续更新)
- SpringBoot+Vue项目的PDF导出及给PDF文件盖章的功能示例
- 密码学复习笔记2【分组密码/S-DES、DES】
- html 自动填充缓存,禁止input密码自动填充及浏览器缓存密码账号解决方案
- 博弈论在自动驾驶方向的应用(Ⅰ):变道决策的综述
- 京东2016春招(实习)笔试+编程题
- java安卓自动关机_android自动关机代码
- tensorflw视频
- tcp连接之半连接攻击和全连接攻击总结
热门文章
- python将excel数据提取到word
- 《C++ Concurrencyin Action》第10章--多线程程序的测试和调试
- JS学习日记--正则基础语法
- border渐变 ios_iOS实现颜色渐变
- tornado源码分析-Application
- Word | 在给毕业论文添加页眉和页脚的时候,如何略过首页和第二页
- 2018/12/22
- 已知某公众号的微信号怎样获取该公众号的二维码
- 液化气瓶口的二维码“身份证”
- 【论文精读】2016-CVPR-Learning temporal regularity in video sequences