С функцией самой по себе все нормально, но обратите внимание на следующие ошибки в ее записи - над и подфункциональные лимиты перепутаны.
Но это еще ерунда. Данный поход вычисления средневзвешенного корректен для вычисления плеча фунции, имеющей двустороннее распределение с выраженным максимумом , к примеру для нормального.
Такое распределение часто встречается в природе, но оно далеко не единственное.
Попробуйте решить ее для следующих условий
1) Собралась команда очень сильных учеников ( скажем математическая школа) и набрали по математическим тестам от 99 (min) до 100 (max) баллов . Какая у них будет оценка?
2) Ваш случай "плавающей шкалы" - собралась команда клинических дебилов (скажем в школе-интернате для умственно дефективных) , сумевших отгадать от 1(min) до 5 (max) ответов из ста. Какая у них будет оценка?
3) Собралась команда клинических идиотов оттуда же, не знающих как держать ручку В итоге все экзаменуемые сдали чистые листы бумаги. Как оценить получившийся результат ( деление нуля на ноль?)
Кстати этот механизм выставления оценок , примененный ко второму случаю хорошо объясняет неадекватно высокий балл на Северном Кавказе.И неадекватно низкий балл спецшкол при ВУЗ-ах.