Tag: 数学

C#中的任意精度小数

可能重复: C#中的大整数 C#无限有效十进制数字(任意精度)没有java 我在C#中以任意精度小数读出了这个问题? 但是我没有J#库。 我需要一个带C#的任意精度小数的库。

浮点不准确性有多确定性?

我知道浮点计算存在准确性问题,并且有很多问题可以解释原因。 我的问题是,如果我运行两次相同的计算,我是否可以始终依赖它来产生相同的结果? 哪些因素可能会影响这个? 计算之间的时间? CPU的当前状态? 不同的硬件? 语言/平台/操作系统? 太阳耀斑? 我有一个简单的物理模拟,并希望记录会话,以便他们可以重播。 如果可以依赖计算,那么我只需要记录初始状态加上任何用户输入,我应该始终能够完全重现最终状态。 如果计算不准确,那么在开始时错误可能会在模拟结束时产生巨大影响。 我目前在Silverlight工作,但有兴趣知道这个问题是否可以回答一般。 更新:初始答案表明是,但显然这并不完全清楚,如所选答案的评论中所述。 看起来我将不得不做一些测试,看看会发生什么。

顺畅连接圆心

我试图沿着中心画一条穿过管子内部的路径。 我必须处理的数据是圆圈的中心点,描述管道中每个转弯的开始和结束时的管道。 通过管道的直线段绘制路径是微不足道的,但我不确定如何接近弯道。 两个圆之间的任何转弯应该是恒定的半径。 因此,我可以访问此圆上的两个点,以及该点处圆圈线的方向。 有谁知道我将如何计算这个圈子的其余部分? 编辑: 附上了照片般逼真的管道素描。 因此,假装曲线不会像地狱那样摇摆不定,蓝色线条表示圆圈,红色表示中心点,绿色表示穿过中心的路径。

使用数学运算符评估字符串

有没有一种简单的方法来评估像”(4+8)*2″这样的字符串,这样你就可以获得24的int值? 或者还有很多工作要做到这一点……?

.NET上的双精度问题

我有一个简单的C#函数: public static double Floor(double value, double step) { return Math.Floor(value / step) * step; } 计算更高的数字,低于或等于“值”,即“步数”的倍数。 但它缺乏精确性,如下面的测试所示: [TestMethod()] public void FloorTest() { int decimals = 6; double value = 5F; double step = 2F; double expected = 4F; double actual = Class.Floor(value, step); Assert.AreEqual(expected, actual); value = -11.5F; step = 1.1F; expected = -12.1F; […]