草庐IT

integer-math

全部标签

c# - 使用 Math.Pow(10, n) 可以吗?

我需要计算幂(10,n)可以使用Math.Pow(10,n)吗?还是应该使用循环?for(inti=0;i哪个更好?为什么? 最佳答案 Math.Pow更好。这里有一个经验法则-在99%的情况下,内置函数优于自定义实现。这使您的代码更清晰,节省大量工作并减少出错的机会。只有当您考虑以不应该使用的方式使用内置函数时,或者当它们存在严重的延迟问题时(老实说,我自己从未遇到过这些情况),您才应该考虑构建自己的实现. 关于c#-使用Math.Pow(10,n)可以吗?,我们在StackOverf

c# - 使用 Math.Pow(10, n) 可以吗?

我需要计算幂(10,n)可以使用Math.Pow(10,n)吗?还是应该使用循环?for(inti=0;i哪个更好?为什么? 最佳答案 Math.Pow更好。这里有一个经验法则-在99%的情况下,内置函数优于自定义实现。这使您的代码更清晰,节省大量工作并减少出错的机会。只有当您考虑以不应该使用的方式使用内置函数时,或者当它们存在严重的延迟问题时(老实说,我自己从未遇到过这些情况),您才应该考虑构建自己的实现. 关于c#-使用Math.Pow(10,n)可以吗?,我们在StackOverf

c# - C# 中的 float / double Math.Round

这个问题在这里已经有了答案:Isfloatingpointmathbroken?(31个答案)Roundingoffloatvalues(2个答案)Differencebetweendecimal,floatanddoublein.NET?(17个答案)关闭3年前。floatff=(float)31.15;doubledd=31.15;varfrst=Math.Round(ff,1,MidpointRounding.AwayFromZero);vardrst=Math.Round(dd,1,MidpointRounding.AwayFromZero);第一:31.1drst:31.2谁

c# - C# 中的 float / double Math.Round

这个问题在这里已经有了答案:Isfloatingpointmathbroken?(31个答案)Roundingoffloatvalues(2个答案)Differencebetweendecimal,floatanddoublein.NET?(17个答案)关闭3年前。floatff=(float)31.15;doubledd=31.15;varfrst=Math.Round(ff,1,MidpointRounding.AwayFromZero);vardrst=Math.Round(dd,1,MidpointRounding.AwayFromZero);第一:31.1drst:31.2谁

c# - 为什么 Math.Round/Floor/Ceiling 不返回 long 或 int?

每次我使用Math.Round/Floor/Ceiling时我总是转换为int(或者可能是long如有必要)。如果它总是返回一个整数,为什么他们返回double。 最佳答案 结果可能不适合int(或long)。double的范围要大得多。double的近似范围:±5.0×10−324到±1.7×10308(Source) 关于c#-为什么Math.Round/Floor/Ceiling不返回long或int?,我们在StackOverflow上找到一个类似的问题:

c# - 为什么 Math.Round/Floor/Ceiling 不返回 long 或 int?

每次我使用Math.Round/Floor/Ceiling时我总是转换为int(或者可能是long如有必要)。如果它总是返回一个整数,为什么他们返回double。 最佳答案 结果可能不适合int(或long)。double的范围要大得多。double的近似范围:±5.0×10−324到±1.7×10308(Source) 关于c#-为什么Math.Round/Floor/Ceiling不返回long或int?,我们在StackOverflow上找到一个类似的问题:

c# - 寻找将负整数归零的 .NET Math 方法

在概念上类似于Math.Abs​​()-我正在寻找一个函数,当给定一个正整数时将返回相同的整数。如果给出负数,将返回零。所以:f(3)=3f(0)=0f(-3)=0是的,这很简单,我可以自己编写,但我想知道.NETMath类是否已经内置了这个,或者是否可以通过巧妙地链接一些Math.*调用来实现同样的功能? 最佳答案 它叫做Math.Max:Math.Max(0,x) 关于c#-寻找将负整数归零的.NETMath方法,我们在StackOverflow上找到一个类似的问题:

c# - 寻找将负整数归零的 .NET Math 方法

在概念上类似于Math.Abs​​()-我正在寻找一个函数,当给定一个正整数时将返回相同的整数。如果给出负数,将返回零。所以:f(3)=3f(0)=0f(-3)=0是的,这很简单,我可以自己编写,但我想知道.NETMath类是否已经内置了这个,或者是否可以通过巧妙地链接一些Math.*调用来实现同样的功能? 最佳答案 它叫做Math.Max:Math.Max(0,x) 关于c#-寻找将负整数归零的.NETMath方法,我们在StackOverflow上找到一个类似的问题:

c# - 为什么 .NET 在 String.Format 中使用与默认 Math.Round() 算法不一致的舍入算法?

我注意到C#/.NET中存在以下不一致之处。为什么会这样?Console.WriteLine("{0,-4:#.0}|{1,-4:#.0}",1.04,Math.Round(1.04,1));Console.WriteLine("{0,-4:#.0}|{1,-4:#.0}",1.05,Math.Round(1.05,1));Console.WriteLine("{0,-4:#.0}|{1,-4:#.0}",1.06,Math.Round(1.06,1));Console.WriteLine("{0,-4:#.0}|{1,-4:#.0}",1.14,Math.Round(1.14,1))

c# - 为什么 .NET 在 String.Format 中使用与默认 Math.Round() 算法不一致的舍入算法?

我注意到C#/.NET中存在以下不一致之处。为什么会这样?Console.WriteLine("{0,-4:#.0}|{1,-4:#.0}",1.04,Math.Round(1.04,1));Console.WriteLine("{0,-4:#.0}|{1,-4:#.0}",1.05,Math.Round(1.05,1));Console.WriteLine("{0,-4:#.0}|{1,-4:#.0}",1.06,Math.Round(1.06,1));Console.WriteLine("{0,-4:#.0}|{1,-4:#.0}",1.14,Math.Round(1.14,1))