草庐IT

math-functions

全部标签

java - 使用 Math.Floor 比显式整数转换有什么好处吗?

这个问题在这里已经有了答案:Casttointvsfloor(7个答案)关闭8年前。问题很简单,有什么好处或区别吗?我注意到在C#中,该函数返回一个没有任何小数位的double,而在Java中它保留小数位,但除此之外结果是相同的。这是我在Java和C#中使用的代码,以及输出://Java//C#doublea=5.5;doublea=5.5;System.out.println(Math.floor(a));Console.WriteLine(Math.Floor(a));System.out.println((int)a);Console.WriteLine((int)a);//Ou

c# Math.Sqrt 实现

最近我一直在大量使用System.Math,前几天我想知道Microsoft将如何在库中实现Sqrt方法。所以我打开我最好的伙伴Reflector并尝试Disassemble库中的方法,但它显示:[MethodImpl(MethodImplOptions.InternalCall),ReliabilityContract(Consistency.WillNotCorruptState,Cer.Success)]publicstaticexterndoubleSqrt(doubled);那一天,我第一次意识到我的child是多么依赖框架,吃东西。开个玩笑,但我想知道MS会使用哪种算法来实

c# - Math.Floor(double) 和 Math.Ceiling(double) 的意外行为

这个问题是关于Math.Floor(double)和Math.Ceiling(double)决定给你上一个或下一个整数值的阈值。我很不安地发现阈值似乎与Double.Epsilon无关,它是可以用double表示的最小值。例如:doublex=3.0;Console.WriteLine(Math.Floor(x-Double.Epsilon));//expected2,got3Console.WriteLine(Math.Ceiling(x+Double.Epsilon));//expected4,got3即使将Double.Epsilon乘以一个合理的位也没有成功:Console.W

c# - PInvoke C# : Function takes pointer to function as argument

我想在我的C#代码中访问这个函数,这可能吗?所以最后C++代码会调用我的函数并应用名为“sFrameofData”的结构。C++代码://Theusersuppliedfunctionwillbecalledwheneveraframeofdataarrives.DLLintCortex_SetDataHandlerFunc(void(*MyFunction)(sFrameOfData*pFrameOfData));这也许行得通吗?C#代码:[DllImport("Cortex_SDK.dll")]publicexternstaticintCortex_SetDataHandlerFu

C# Math.Ceiling bug 与否?

我不知道为什么Ceiling会像下图那样为什么processingFee!=Settings.PaymentProcessingFeeInPercentage*prizesSum?Viewimageatfullsizealttexthttp://img514.imageshack.us/img514/3950/csharpceilingproblem.png 最佳答案 您的百分比实际上不是0.05。它的值接近0.05...并且可能比0.05多一点。因此,当它乘以2600时,您得到的值刚好超过130.0...然后“上限”为131.0。

c# - System.Math 未识别

usingSystem;usingSystem.Math;classtest{publicstaticvoidMain(){Console.Write("Enteranyvalue:");strings=Console.ReadLine();doublen=double.Parse(s);doubler=Math.sqrt(n);Console.WriteLine(r);Console.ReadKey();}}我觉得这段代码中的每一件事都清楚,但是这段代码给出了编译错误:using命名空间指令只能应用于命名空间;“System.Math”是一种类型而不是命名空间如何使用数学函数?我们在

c# - 表达式树 - Math.Max 替换

当我使用表达式树来替换一个方法时,比如Math.Max,看起来它在表达式树中成功地替换了它。但是当我在EntityFramework中使用它时,它抛出一个关于EntityFramework不支持Math.Max的异常。但我明确地替换了它。有人知道为什么吗?以及修复代码的方法?usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Linq.Expressions;namespaceConsoleApplication1{publicstaticclassCalculateDatabase{publ

c# - 为什么 Math.Exp 在 32 位和 64 位之间给出不同的结果,具有相同的输入,相同的硬件

我将.NET2.0与PlatformTargetx64和x86一起使用。我给Math.Exp相同的输入数字,它在任一平台上返回不同的结果。MSDN说你不能依赖文字/解析的Double在平台之间表示相同的数字,但我认为我在下面使用Int64BitsToDouble避免了这个问题并保证在两个平台上对Math.Exp的输入相同。我的问题是为什么结果不同?我本以为:输入以相同的方式存储(double/64位精度)无论处理器的位数如何,FPU都会执行相同的计算输出以同样的方式存储我知道一般情况下我不应该比较第15/17位之后的float,但我对这里的不一致与在同一硬件上看似相同的操作感到困惑。有

c# - 使用 "Expression Bodied Functions and Properties"有什么好处

这个问题在这里已经有了答案:Expression-bodiedfunctionmembersefficiencyandperformanceinC#6.0(2个答案)关闭6年前。我确实看到很多人使用该新功能,但使用这些表达式有什么好处?Examples:publicoverridestringToString()=>string.Format("{0},{1}",First,Second);publicstringText=>string.Format("{0}:{1}-{2}({3})",TimeStamp,Process,Config,User);这个问题不同于thisone,因为

c# - Azure Functions 如何将应用程序设置添加到绑定(bind)

我正在尝试使用我的Azure函数的应用设置添加一些自定义绑定(bind)。我只需要从我的设置中接收一个字符串。我想从我的设置中获取simpleValue。{"bindings":[{"name":"someValue","type":"stringSetting","connection":"simpleValue","direction":"in"}],"disabled":false}并在Run方法中获取它:staticvoidGetOrders(TraceWriterlog,stringsomeValue){log.Info(someValue);}有可能吗?也许还有其他方法可以