我建立了 5 星评级系统。当用户保持对照片的评级并且最终br将返回超过 100% 时,问题就来了,我如何确保它以百分比返回而不超过 100%
br = ( (avg_num_votes * avg_rating) + (this_num_votes * this_rating) ) / (avg_num_votes + this_num_votes)
假设avg_rating
和this_rating
都不超过 100%,并且所有值都是非负数,那么您的公式将永远不会超过 100%。
br = ( (avg_n * avg_r) + (this_n * this_r) ) / (avg_n + this_n) <=
<= ( (avg_n * 100%) + (this_n * 100%) ) / (avg_n + this_n) =
= 100% * (avg_n + this_n) / (avg_n + this_n) =
= 100%
如果avg_rating
并且this_rating
不是以百分比来衡量(例如,它们是 0-5 的星数),您应该首先将它们转换为百分比。