0

我有数学问题,我无法转换为 PHP 或以不同方式解释。有人可以把我送到正确的方向吗?

我有两个按顺序排列的数字(序列)。#1#2。我想以某种方式比较这两个数字并得到一个低于100比较结果的正数。值越高,结果应该越高。但是,如果#2也很高,那么结果应该相应地“变暗”......

这些是“预期结果”

#1: 5           #2: 10         => ~ 5
#2: 10          #2: 5          => ~ 8
#1: 50          #2: 60         => ~ 12
#1: 50          #2: 100        => ~ 8
#1: 100         #2: 50         => ~ 20
#1: 500         #2: 500        => ~ 25
#1: 500         #2: 100        => ~ 50
#1: 100         #2: 500        => ~ 15

数字 (12) 值介于0和之间1000。结果只是估计,它们显然会有所不同。我只是想展示它是如何相关的。

4

2 回答 2

1

首先,您应该尝试通过定义(数学)函数 f(x, y) = z 其中 x = #1,y = #2 和 z = 您的输出来建立一个干净的数学模型。我无法通过您的数据说明这样的功能,但这是您想用编程语言实现问题时需要的基础。

所以假设你想要类似的东西

  f(x, y) = {
       50 + (x - y) * 50/y 如果 y > x
       (y - x) * 50/x 如果是

此函数比较 #1 (x) 和 #2 (y) 并给出一个介于 50 和 100 或 0 和 50 之间的数字,具体取决于 x 或 y 是否更大。

在任何编程语言(如 PHP)中实现数学函数非常容易:

函数 f(x, y) { 返回 (y > x) ? ( 50 + (xy)*50/y ) : ( (yx) * 50/x ); }

现在您可以从您的代码或例如通过一些 HTML 表单调用该函数。

于 2009-11-21T22:08:59.753 回答
1

听起来像是一个将曲线拟合到数据的机会,他们使用这些系数为两个输入变量提供结果。

首先,在方格纸上绘制出你的预期结果,看看你是否有一个有意义的图。

于 2009-11-22T00:24:03.783 回答