小编loc*_*tos的帖子

模糊调用Math.Round(int64/int64,int)

我想做大号的百分比(int64:600 851 475 143)

我的实际操作是

a = Math.round(i / 600851475143 * 100, 5);
Run Code Online (Sandbox Code Playgroud)

我也是一个介于1和600851475143之间的int64.如果我是对的,结果将介于0,00000%和100,00000%之间.

但Visual Studio Express 2013告诉我方法'System.Math.Round(decimal,int)'和'System.Math.Round(double,int)'之间的模糊调用.

怎么说视觉上好的方法是System.Math.Round(decimal,int),即使某些int64在操作中?

奖励:要理解我的问题,我正在尝试解决ProjectEuler.net的问题3:"13195的主要因素是5,7,13和29. 600851475143的最大主要因素是什么?"

我做了我的方法,它适用于13195.但现在我必须用600851475143(在x64系统上),但我的算法似乎不是optimezed,我想添加百分比进度条,以了解我的EXE崩溃或不.我的变量是这个百分比......

我不想要解决Euleur问题3的问题,我只需要修复我的百分比问题......

c# double decimal rounding ambiguous

1
推荐指数
1
解决办法
922
查看次数

标签 统计

ambiguous ×1

c# ×1

decimal ×1

double ×1

rounding ×1