Вычисление рейтинга в диапазоне от 0 до 5

Рейтинг: 0Ответов: 1Опубликовано: 14.01.2023

Как лучше вычислить значение рейтинга от 0 до 5

  • 0 - минимальный рейтинг
  • 5 - максимальный рейтинг

Допустим

 - Лайков 20422 
 - Дизлайков 1002


 - Лайков 0 
 - Дизлайков 1002


 - Лайков 20422 
 - Дизлайков 0

Как в данном случаи получить результат? C плавающей запятой, после запятой не более 1 цифры, в десятых.

Ответы

▲ 8Принят

Как вариант - реализовать самым банальным способом, изначально высчитывать рейтинг от 0 до 1, а затем умножать его на 5.

Также, нужно не забыть о граничном случае, и когда оценок нет - возвращать рейтинг 0.

Как это будет выглядеть:

Пусть, рейтинг - это отношение числа лайков к общему числу оценок.

Тогда, в случае:

 - Лайков 20422 
 - Дизлайков 1002

Имеем: 20422 / (20422 + 1002) = 0.9532 * 5 = 4.766 ~ 4.8.

Общая формула: 5 * (x / (x + y)), где x - количество лайков, y - количество дизлайков.

И в вариантах:

 - Лайков 0 
 - Дизлайков 1002


 - Лайков 20422 
 - Дизлайков 0

Согласно формуле получаем 0 и 5, соответственно.

P.S А вообще, это только один из вариантов (самый очевидный) и придумать их можно очень много, в зависимости от логики вашего проекта.