- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我一直在尝试解决这个关于风寒的公式,我得到了结果,但我需要小数点后的更多数字。无论我尝试什么都没有用。请帮忙!
static void Main()
{
double temp = 20;
double wind = 7;
double windChill = 35.74 + 0.6215 * temp + (0.4275 * temp - 35.75) * Math.Pow(wind, 0.16);
Console.WriteLine("so wind_chill = {0}", Math.Round(windChill, 15));
}
在此我得到最终数字 11.03490062551
,但我想要 11.034900625509998
。我做错了什么?
最佳答案
问题不在于 Math.Round
,Math.Round
实际上会给你 11.034900625509991
我想这就是你想要的。
问题出在 Console.WriteLine
上,它是导致精度损失的方法(因为在内部,它调用 string.Format
这实际上导致了精度损失损失)。
要修复它,请使用 round-trip format specifier像这样:
Console.WriteLine("so wind_chill = {0:R}", Math.Round(windChill, 15));
另请注意,windChill
的值应该对您来说足够好。无需调用 Math.Round
。
关于c# - Wind Chill C# 最终编号需要更多位数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35120439/
我正在尝试从此 link 运行 Chill-Scala 的示例代码 我有两个虚拟案例类 一个是用户 @SerialVersionUID(1) case class User(name :String,
我正在尝试确定公制风寒度。我找到了一些 good information from the BBC (它被称为“感觉像温度”),但我不太清楚如何将它转换为 C 代码。 这是他们的计算信息: T(wc)
我一直在尝试解决这个关于风寒的公式,我得到了结果,但我需要小数点后的更多数字。无论我尝试什么都没有用。请帮忙! static void Main() { double temp = 20;
我正在尝试 Kryo+Chill(com.twitter:chill_2.11:0.8.0,Scala 版本是 2.11.8)。以下代码在桌面上运行良好,但在 Android 上会崩溃。 case
我尝试在 Spark 中使用 Avro GenericRecords,但出现了 java.io.NotSerializableException: org.apache.avro.mapred.Avr
Twitter-chill 看起来是一个很好的解决方案,可以解决如何在 Scala 中有效地序列化而不需要过多的样板。 但是,我没有看到他们如何处理案例类的任何证据。这只是自动工作还是需要做一些事情(
我是一名优秀的程序员,十分优秀!