Tag: math

找出第n个斐波纳契数字为非常大的“n”

我想知道如何find斐波纳契数列的第n项来表示一个非常大的n值,例如1000000.使用等级recursion方程fib(n)=fib(n-1)+fib(n-2) ,find第50个学期需要2-3分钟! Googlesearch后,我开始了解Binet的公式,但是这里不适合n> 79的值 有没有像我们一样寻找素数的algorithm呢?

计算邮政编码在PHP中的距离

我从这个页面抓取了邮政编码的数据库和他们的langitudes /纬度等等。 它有以下几个领域: ZIP,纬度,长度,城市,州,县,邮编 数据是在一个文本文件,但我把它插入到MySQL表中。 我现在的问题是,我如何利用上面的字段来计算用户可以在网站上input的两个邮政编码之间的距离? 在PHP中的工作代码将不胜感激

按螺旋顺序打印二维数组

如何以螺旋顺序打印5×5的二维数组? 是否有任何公式,以便我可以按螺旋顺序打印任何大小的数组?

将多项式拟合到数据

给定一组值(x,f(x))是否有办法find最适合数据的给定度的多项式? 我知道多项式插值法 ,它用于在给定n+1数据点的情况下find度为n的多项式,但这里有大量的值,我们想要find一个低阶多项式(find最佳线性拟合,最好二次,最好立方等)。 这可能与最小二乘有关 更一般地说,当我们有一个多元函数 – 像(x,y,f(x,y))这样的点,并且想要find最好的多项式( p(x,y) )在variables中给定的程度。 (具体来说是一个多项式,而不是样条或傅立叶级数。) 理论和代码/库(最好在Python中,但任何语言都可以)将是有用的。

太阳的位置,一天的时间,经度和纬度

这个问题在三年前已经被问过了。 有一个答案,但我发现在解决scheme中的一个小故障。 下面的代码在R.我已经将它移植到另一种语言,但是已经在R中直接testing了原始代码,以确保问题不在我的移植中。 sunPosition <- function(year, month, day, hour=12, min=0, sec=0, lat=46.5, long=6.5) { twopi <- 2 * pi deg2rad <- pi / 180 # Get day of the year, eg Feb 1 = 32, Mar 1 = 61 on leap years month.days <- c(0,31,28,31,30,31,30,31,31,30,31,30) day <- day + cumsum(month.days)[month] leapdays <- year %% 4 […]

计算多个纬度/经度坐标对的中心点

给定一组经纬度点,如何计算该组中心点的纬度和经度(又称以点为中心的点)? 编辑:我用过的Python解决scheme: Convert lat/lon (must be in radians) to Cartesian coordinates for each location. X = cos(lat) * cos(lon) Y = cos(lat) * sin(lon) Z = sin(lat) Compute average x, y and z coordinates. x = (x1 + x2 + … + xn) / n y = (y1 + y2 + … + yn) / […]

C ++算术升级头的使用

我一直在玩弄一套模板来确定在C ++中给出两种基本types的正确提升types。 这个想法是,如果你定义一个自定义的数字模板,你可以使用这些来确定基于传递给模板的类的运算符+函数的返回types。 例如: // Custom numeric class template <class T> struct Complex { Complex(T real, T imag) : r(real), i(imag) {} T r, i; // Other implementation stuff }; // Generic arithmetic promotion template template <class T, class U> struct ArithmeticPromotion { typedef typename X type; // I realize this is incorrect, but the […]

在C#中使用generics创buildmath库

有没有可行的方法使用generics创build一个math库,不依赖于select存储数据的基本types? 换句话说,我们假设我想写一个Fraction类。 这个分数可以用两个或两个双打或者什么来表示。 重要的是基本的四个算术运算是明确的。 所以,我希望能够写入Fraction<int> frac = new Fraction<int>(1,2)和/或Fraction<double> frac = new Fraction<double>(0.1, 1.0) 。 不幸的是,没有界面代表四个基本操作(+, – ,*,/)。 有没有人find一个可行,可行的方式来实现这一点?

防止Mathematica中的运行时错误雪崩

当笔记本超出了一些function时,我遇到了一个典型的情况 – 我评估一个expression式,但不是正确的答案,我得到了嘟嘟声,接着是几十个无用的警告,之后是“进一步输出……将被抑制” 有一件事我觉得很有用 – 在函数内部使用类似Python的“assert”来强化内部一致性。 任何其他提示? Assert[expr_, msg_] := If[Not[expr], Print[msg]; Abort[], None] 编辑11/14警告雪崩的一般原因是当子expression式评估为“坏”值时。 这会导致父expression式评估为“坏”值,而这个“坏”将一直传播到根。 一路上评估的内置插件注意到不良情况并产生警告。 “坏”可能意味着头部错误的表情,错误的元素数量表,负定matrix而不是正定matrix等等。一般来说,这是不符合母expression语义的东西。 解决这个问题的一个方法就是重新定义所有的函数,以“不好的input”返回未评估的值。 这将处理由内置插件产生的大部分消息。 像“零件”这样的结构化操作的内build程序仍会尝试评估您的价值,并可能产生警告。 将debugging器设置为“中断消息”可以防止一系列错误,尽pipe它总是将其打开

如何在C中使用nan和inf?

我有一个数值方法,如果出现错误,可以返回nan或inf,为了testing目的,我想暂时强制它返回nan或inf,以确保正确处理情况。 有没有一种可靠的, 独立于编译器的方法来创buildC中nan和inf的值? 谷歌search了大约10分钟后,我只能find依赖于编译器的解决scheme。