一星到五星评级,其中1星= 0%

时间:2013-04-25 23:28:26

标签: ruby math

愚蠢的问题,但我需要一种简单的方法来计算得分:

1 star = 0%
2 star = 25%
3 star = 50%
4 star = 75%
5 star = 100%

当我得到一个平均分数然后变成像1.2或2.3等的浮点数时,棘手的部分来找我...最好是在Ruby中,但基本的数学公式会做!

谢谢!

2 个答案:

答案 0 :(得分:2)

有一个简单的数学公式描述了整数值输入的输出(星数)。如果您的意思是输入是百分比而输出是星级,则只需反转该功能。

enter image description here

答案 1 :(得分:1)

对于明星的百分比,您需要以下内容:

numStars = int (percentVal / 25) + 1

这将为0 thru 24.999..分配1,为25 thru 49.999..分配2,依此为100分配最多5个。

换句话说,它使用截断,有效地强加阈值:你_达到50以获得三颗星。

如果你想走另一条路(从星星到百分比),计算是:

percentVal = numStars * 25 + 1

如果需要,您可以根据计算前的平均numStars值进行舍入。