Math 根据要获取的价格和金额查找最接近的数量

Math 根据要获取的价格和金额查找最接近的数量,math,economics,Math,Economics,我有一道小数学题,我需要根据成本价和最终金额来确定数量 这在理论上很简单,因为它只是最终金额/实际成本=数量,但在我的例子中,实际成本根据数量变化 数量=最终金额/(项目成本+间接成本),其中间接成本为滑动比例 例如 如果我想卖羊赚500美元,每只羊的底价是50美元,但是卖一只羊的成本是5美元,所以一只羊的实际成本是55美元,但是如果我卖两只羊,那么卖一只羊的成本是7美元,所以实际成本是107美元,依此类推 在不需要几乎无条件地循环的情况下,达到尽可能接近最终金额(但不超过)的最佳方法是什么?基

我有一道小数学题,我需要根据成本价和最终金额来确定数量

这在理论上很简单,因为它只是最终金额/实际成本=数量,但在我的例子中,实际成本根据数量变化

数量=最终金额/(项目成本+间接成本),其中间接成本为滑动比例

例如 如果我想卖羊赚500美元,每只羊的底价是50美元,但是卖一只羊的成本是5美元,所以一只羊的实际成本是55美元,但是如果我卖两只羊,那么卖一只羊的成本是7美元,所以实际成本是107美元,依此类推


在不需要几乎无条件地循环的情况下,达到尽可能接近最终金额(但不超过)的最佳方法是什么?

基于您的间接费用总是非负且单调的假设,您知道吗

0 <= Quantity <= Final Amount/Item Cost

0注意,间接费用是销售数量的函数。这意味着你的方程是一种易于迭代的形式。你对这个数量做了一个初步的猜测,把它插入方程的右边,然后用它对这个数量进行新的猜测。一旦数量稳定下来,您就达到了一个固定点,可以停止

对于间接费用中具有规模经济的绵羊销售示例,我首先计算假定间接费用最小的绵羊数量。这可能是对的,也可能估计过高。这个过程所需的更新数量事先还不清楚,但我预计会迅速收敛

在Python中,它可能看起来像我所能编写的伪代码:

import math

def overhead(n):
    # Not given in problem, so I can't give an implementation
    raise NotImplementedError("Sorry, don't know what this is")

def rhs(n, u, t):
    return math.floor(t / (u + overhead(n)))

def best_quantity(unit_cost, total_cost, min_overhead):
    prev_guess = 0
    current_guess = math.floor(total_cost / (unit_cost + min_overhead)) 
    while (current_guess != prev_guess):
        prev_guess = current_guess
        current_guess = rhs(current_guess, unit_cost, total_cost)
    return current_guess

print best_quantity(50.0, 500.0, 0.0)

你的问题放错地方了。试试数学交换。还有,微积分。间接费用还不太清楚。7美元是按字面意思卖一只羊的成本,还是按最终成本意思卖两只羊的总成本?也就是说,规模经济还是规模不经济?