将两个值四舍五入为一个"fancy"值



我有一个总价T和一个顾客总价c,我有一个数量a,我有一个单件价格s,

假设我的总价格T是11。一个包裹包含的物品数量是6。11个,一包6个。单品价格S是T/A, 11/6 = 1 83333。1,833333不是一个花哨的值。这里,我想手动将S设置为1,84。

C是我给顾客的总价。所以C是t的奇特值

当S=1,84时,我得到C (SxA=1,84x6=11,04)11,04又是一个丑陋的值。这里,我想设C为(1,10)所以S现在是1,85

式中:C/A=S .......其中C应舍入到0,1位小数,S应舍入到0,01位小数。

是否有办法创建一个公式来计算我的C和S基于输入T和a ?

我将使用Python

from math import ceil
# 'round' is available in Python's default workspace.
# 'ceil' and 'floor' must be imported from the math library.
# Try each of those, to see which one you want.
#
# From the question, I assume you want 'ceil'.
T = 11
A = 6
S_fancy = ceil(T/A*100)/100
print('S_fancy =', S_fancy)
C_fancy = ceil(S_fancy*A*10)/10
print('C_fancy =', C_fancy)
S_even_fancier = ceil(C_fancy/A*100)/100
print('S_even_fancier =', S_even_fancier)

运行它,你会得到:

S_fancy = 1.84
C_fancy = 11.1
S_even_fancier = 1.85

我希望这对你有帮助。再一次,试试这些:round,ceilfloor

最新更新