2015-09-16 57 views
1

我试图将一个Python脚本放在一起,该脚本接受多个变量并根据目标利润率(百分比)输出价格。根据多个百分比因子计算产品价格

如果我拿出一个价格,我可以计算出它的百分比边际。例如,假设我有一个我在$49.00列出的产品。

  • 项目成本:$14.00
  • 市场成本:的$ 49 10%($4.90
  • 付款处理器成本:2.9%($1.42
  • 总成本:$20.32($ 14 + $ 4.90 + $ 1.42)
  • 利润总额:$28.68($ 49 - $ 20.32)
  • 计算利润率:58.53%((100/49)* 28.68)

但是,当试图根据成本,利润率,市场百分比和支付处理器百分比来转移问题并产生价格时,我在如何解决这个问题上完全丧失了工作能力。

是否有其他人解决了这个问题?如果是的话,你有没有任何指点或者你会提供一个解决方案让我更好地理解如何在未来应对这些挑战?

实例并不一定是在Python,这恰好是我的工作语言。


巨大的感谢@mtadd在雷曼方面奠定了这一点。

下面是如何这是在Python解决的工作例如:

import decimal 

item_cost = decimal.Decimal('14.00') 
market_multiplier = decimal.Decimal('0.10') # 10%/100 
payment_processor_multiplier = decimal.Decimal('0.029') # 2.9%/100 
profit_margin = decimal.Decimal('0.5853') # 58.53%/100 

price = costs/(
    decimal.Decimal('1') - 
    profit_margin - 
    market_fees_multiplier - 
    payment_fees_multiplier 
) 

印刷price输出28.68,这是非常符合我们58.53%的目标保证金即期。

+0

这是代数,而不是编程。用概念的变量写出方程,而不是特定的美元金额。现在解决价格;用另一个表达式替换另一个表达式,直到右侧包含其他变量。 如果你发布你的实际方程,我可以帮你引导你。 – Prune

+1

我相信,问题中总成本的计算是不正确的。总成本应该是项目,市场和支付处理器成本的总和,而不是价格减去这些条款。 – mtadd

+0

@mtadd,你说得很对,我翻了一下价值。固定。 –

回答

1

这是基本的代数。首先,定义你的符号:

P = Price 
MktFrac = Marketplace Fraction 
PayFrac = Payment Processor Fraction 
C = Cost 
TC = Total Cost 
TP = Total Profits 
PM = Profit Margin Fraction 

请注意,不是使用百分比(0-100),而是使用分数(0-1)。您可以将分数乘以100

,然后再转换为百分比您的基本公式

TC = C + MktFrac*P + PayFrac*P 
TP = P - TC 
PM = TP/P 

随着一些替代和简化

TC = P*(MktFrac+PayFrac) + C 
TP = P*(1-MktFrac-PayFrac) - C 
PM = 1-MktFrac-PayFrac - C/P 

所以这是公式利润率的一切在右手侧。通过成本

1/P = (1 - PM - MktFrac - PayFrac)/C 

1 - PM - MktFrac - PayFrac = C/P 

鸿沟,并采取相互

P = C/(1 - PM - MktFrac - PayFrac) 

或百分比:如果要解决价格,首先通过自身隔离与价格术语

P = C/(1 - PM - MktPct/100 - PayPct/100) 
+0

男人,非常感谢您抽出宝贵时间。代数不是强项,所以这是一个巨大的帮助。我已经更新了我的问题以包含一个工作示例。 –