Tag: 数学

找到窦function的零点

我想在java中实现一个函数,找到正弦函数的零点。 我知道怎么做但我真的不明白该问题的以下定义: 实现一个函数,在a和b之间的间隔中搜索正弦函数中的空点。 搜索间隔[下限,上限]应减半,直到下限和上限彼此小于0.0001。 为什么间隔减半? 有任何想法吗?

某些语言是否允许负模数?

我很好奇这些语言(Java,C …)忽略了模数运算的数学定义。 在模块操作中返回负值的意义是什么(根据定义,它应该总是返回正数)?

简单的递归示例 – 请帮助我理解递归

public static int triple(int n) { if (n == 0) return 0; else total = 3 + triple(n-1); System.out.println(total); return total; } 好的,所以我有一个简单的回忆示例,我似乎无法掌握,我希望有人能够让我逐步了解程序如何获得其输出。 这就是我认为会发生的事情。 让我们说n=5所以,程序循环和命中total = 3 + triple(5-1) ,我认为这将等于7 ..这是错误的程序打印 3 6 9 12 15 所以…然后我认为三重必须在打印总数之前再次运行……我相信它确实如此但我根本不明白它的总和是怎么回事。 因为它看起来像这样: 3 + triple(4) 3 + triple(3) 3 + triple(2) 3 + triple(1) =3 有人可以解释一下,因为你我可以很失落!

用模量计算大功率

我目前正在研究一些我需要计算类似值的东西 (65 ^ 17)mod 3233 = * 上述问题的答案是2790,但是因为65 ^ 17大于Math.pow可以返回的值,所以它总是给出错误的答案。 我已经使用BigIntegers(以及内置的modPow)编写了一个实现,但是如果可能的话我想避免使用它们。 有没有其他方法可以避免使用BigIntegers?

用Java绘制球体

出于某种原因,当我尝试通过检查点的半径来制作Java中的球体时,它给了我一个立方体而不是一个球体。 我的代码或公式有问题吗? for(double X = 0; X < diameter; X++ ) { //mcspace.logger.info("X = " + Double.toString(X)); for(double Y = 0; Y < diameter; Y++ ) { //mcspace.logger.info("Y = " + Double.toString(Y)); for(double Z = 0; Z radius){cX -= radius;} if (Y > radius){cY -= radius;} if (Z > radius){cZ -= radius;} double Cr = […]

快速SVD算法

我正在寻找一个快速库来计算Java中的SVD(奇异值分解)。 我已经尝试了一些我发现的库,并且我已经做了一些基准测试(值显示了我的基准测试运行的平均时间……)它不是真正有效的基准测试,但是我测试了我需要处理的数据,对我来说够了.. Jama – 152 102ms ujmp – 156 603ms Commons Math – 183 877ms 小马 – 203 866ms jblas – 慢一点…… 我真的不希望找到比贾特更快的东西,但我可以尝试一下……你能推荐我一些其他的图书馆吗? 谢谢! 编辑:我找到了一个很好的页面,其中包含线性代数库的基准,所以我想结束这个问题… EJML看起来很有希望……

简单算术字符串的正则表达式

我正在尝试validation一个简单的算术表达式,以确保它适合格式操作数运算符操作数:234.34 + 5.我想出如何轻松validation这一点,但我希望用户能够继续输入2个以上的值如:234.34 + 5/6 * 7 – -34。 到目前为止我的正则表达式如下: [-]*\d+[.\d+[E\d+]*]*[\s+[*+/-]\s+[-]*\d+[.\d+[E\d+]*]*]* 这部分有效,但我遇到的问题是它允许一些我不想要的奇怪的东西,如-4.34.1 – 34 + 有什么建议么?

两个整数的乘积模

我必须找到c, c =(a * b)mod m a,b,c,m是32位整数。 但是(a * b)可以超过32位。 我试图找出一种计算c的方法,而不使用长或任何数据类型> 32位。 有任何想法吗? 如果m是素数,那么可以简化一下吗? 注意:基于一些评论, c =((mod m)*(b mod m))mod m,但在我的情况下,即使这个乘法也会溢出

检测圆形(非精确圆)路径算法?

我收到一个路径 – 来自touchevent的x,y坐标列表。 如何检测此路径形成圆形路径(不是完整或精确的圆)? 是否有任何算法或方法来检测这个?

如何获得5或10的下一个最高倍数

根据一些规则,我希望根据一些规则获得次高的数字,因为我在描述它们时遇到一些困难,我将通过例子来说明: Input Desired output ——- ————– 0.08 0.1 0.2 0.5 5 10 7 10 99 100 100 500 2345 5000 在某种意义上,输出应该是“5或10的下一个最高倍数”。 我希望这是可以理解的; 如果没有,请告诉我。 执行将在java和输入将是正double s。