草庐IT

ffast-math

全部标签

math - 在给定三边的坐标平面中绘制三角形

会给出三角形的三边a、b、c的长度,我需要求出顶点的坐标。中心(可能是外心)可以是原点或(x,y)。谁能指出我正确的方向? 最佳答案 我已经阅读了brainjam的回答并检查了他的回答是否正确并且他是对的。计算:O(0;0)、A(a;0)和B(x;y)是三角形的三个点。C1是围绕A的圆,r1=c;C2是围绕O的圆并且r2=b。B(X;Y)是C1和C2的交点,即点在两个圆上。C1:(x-a)*(x-a)+y*y=c*cC2:x*x+y*y=b*by*y=b*b-x*x(x-a)*(x-a)+b*b-x*x=c*cx*x-2*a*x+a

c# - 为什么 math.Ceiling(double a) 不直接返回 int?

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:Whydoesn'tMath.Round/Floor/Ceilingreturnlongorint?msdn定义了这个方法:返回大于或等于指定doublefloat的最小整数。但实际上是publicstaticdoubleCeiling(doublea)为什么不直接返回int呢?微软是怎么想的?

c# - .net 4.5.2 中对 Math.Exp 或双重实现的更改

如果我运行语句Math.Exp(113.62826122038274).ToString("R")在安装了.net4.5.1的机器上,然后我得到了答案2.2290860617259248E+49但是,如果我在安装了.netframework4.5.2的机器上运行相同的命令,那么我会得到答案2.2290860617259246E+49(即最后一位数字改变)我意识到这在纯数字方面微不足道,但有谁知道.net4.5.2中所做的任何更改可以解释这些更改吗?(我不喜欢一个结果胜过另一个结果,我只是想知道为什么它发生了变化)如果我输出TheinputinroundtripformatTheinpu

c# - 为什么 C# 执行 Math.Sqrt() 比 VB.NET 慢?

背景今天早上运行基准测试时,我和我的同事发现了一些关于C#代码与VB.NET代码性能的奇怪现象。我们开始比较C#与DelphiPrism计算素数,发现Prism快大约30%。我认为CodeGear在生成IL时对代码进行了更多优化(exe大约是C#的两倍,并且其中包含各种不同的IL。)我决定也用VB.NET编写一个测试,假设Microsoft的编译器最终会为每种语言编写基本相同的IL。然而,结果更令人震惊:同样的操作,代码在C#上的运行速度比VB慢了三倍以上!生成的IL是不同的,但不是非常不同,我不擅长阅读它来理解差异。基准我在下面包含了每个代码。在我的机器上,VB在大约6.36秒内找到

c# - 161803398 是一个 'Special' 的数字吗? Math.Random() 内部

我怀疑答案是“因为数学”,但我希望有人能在基本层面提供更多见解...我今天在BCL源代码中翻来覆去,看看我以前使用的一些类实际上是如何实现的。我以前从未想过如何生成(伪)随机数,所以我决定看看它是如何完成的。完整来源:http://referencesource.microsoft.com/#mscorlib/system/random.cs#29privateconstintMSEED=161803398;每次为Random()类播种时都会使用此MSEED值。无论如何,我看到了这个“神奇的数字”——161803398——我完全不明白为什么选择这个数字。它不是素数或2的幂。它不是看起来

javascript - 为什么 math.max() 在整数数组上返回 NaN?

我试图从一个简单数组中获取最大数:data=[4,2,6,1,3,7,5,3];alert(Math.max(data));我读到即使数组中的一个值无法转换为数字,它也会返回NaN,但在我的例子中,我已经用进行了双重检查typeof以确保它们都是数字,那么我的问题是什么? 最佳答案 您的代码不起作用的原因是因为Math.max期望每个参数都是有效数字。这在documentation中指示如下:Ifatleastoneofargumentscannotbeconvertedtoanumber,theresultisNaN.在您的实例中

javascript - Math.min.apply(0, array) - 为什么?

我刚刚浏览了一些JavaScript代码(Raphaël.js)并遇到了以下行(略微翻译):Math.min.apply(0,x)其中x是一个数组。你到底为什么要这样做?行为似乎是“从数组x中取最小值。” 最佳答案 我在发布自己的问题时意识到了答案:这是在JavaScript中获取数组x最小值的最简洁的方法。第一个论点完全是任意的;我发现0令人困惑,因为代码直觉上意味着“取0和x的最小值”,但事实并非如此。使用Math对象对人类可读性更有意义,但Raphael.js作者痴迷于缩小,0缩短了三个字节。参见http://ejohn.or

javascript - Math.random() 返回值大于一?

在JavaScript中使用随机数时,我发现了一个令人惊讶的错误,大概是在GoogleChrome的V8JavaScript引擎中。考虑://Generatearandomnumber[1,5].varrand5=function(){returnparseInt(Math.random()*5)+1;};//ReturnasampledistributionoverMAXtimes.vartestRand5=function(dist,max){if(!dist){dist={};}if(!max){max=5000000;}for(vari=0;i现在,当我运行testRand5(

JavaScript Math.random 正态分布(高斯钟形曲线)?

我想知道JavaScript函数Math.random是否使用正态分布(相对于均匀分布)。如果不是,我怎样才能得到使用正态分布的数字?对于创建随机正态分布数字的算法,我尚未在Internet上找到明确的答案。我想重建施密特机(德国物理学家)。机器产生0或1的随机数,它们必须服从正态分布,以便我可以将它们绘制为高斯钟形曲线。例如,随机函数产生120个数字(0或1),这些求和值的平均值必须接近60。 最佳答案 根据我的经验,这是第一个关于“jsgaussianrandom”的Google结果,我觉得有义务对该查询给出实际答案。Box-M

javascript - Math.random() 是加密安全的吗?

JavascriptMath.random()在不同浏览器中使用的算法有多好?可以用它来生成盐和一次性密码吗?我可以使用一个随机中的多少位? 最佳答案 没有;JavaScript的Math.random()函数不是加密安全的随机数生成器。你最好使用JavaScriptCryptoLibrary的Fortuna实现是一个强大的伪随机数生成器(查看src/js/Clipperz/Crypto/PRNG.js),或WebCryptoAPIforgetRandomValues这里有详细的解释:Howtrustworthyisjavascri