C# 用某个数字除法得到c中某个数字的百分比时,除法值出错#
我想得到255的百分比。255是100%。如果我的数字在1-255之间,我需要找出这个数字的百分比 我尝试了这个公式,但我得到了小数点后的值,如何删除小数点C# 用某个数字除法得到c中某个数字的百分比时,除法值出错#,c#,C#,我想得到255的百分比。255是100%。如果我的数字在1-255之间,我需要找出这个数字的百分比 我尝试了这个公式,但我得到了小数点后的值,如何删除小数点 int Battery_Dec = Convert.ToInt32(BatteryByte, 16);//12 double BatteryPercentage = Convert.ToDouble(Battery_Dec)/ 255;//0 double Battery = BatteryPercentage * 100; 如果1==
int Battery_Dec = Convert.ToInt32(BatteryByte, 16);//12
double BatteryPercentage = Convert.ToDouble(Battery_Dec)/ 255;//0
double Battery = BatteryPercentage * 100;
如果1==0%和255==100%,那么f(n)=(n-min)/(max-min),换句话说:
private static double ToPercent(int dec)
{
const int min = 1;
const int max = 255;
const double diff = max-min;
return (dec-min)/diff * 100;
}
那么,您认为表达式
Battery\u Dec/255
的值是多少,记住它正在执行整数运算?(提示:如果在除法之前进行乘法运算,则可以在不进行任何浮点运算的情况下进行乘法运算,前提是该值确实在0-255范围内。您还应该了解C#命名约定。)是的,你总是得到0,因为你尝试将整数值除以整数值,其中第一个整数值小于第二个整数值。尝试使用浮点、双精度或十进制而不是整数。你应该得到一本C#书,你会在第一章的第一页找到答案!