Исправление peregrine, (текущая версия) :
Оно не удобно к восприятию. Вообще идея у тебя не самая плохая, но это только идея, до нормального алгоритма её надо довести. Можешь гуглить в сторону линейной интерполяции и логарифмической, у тебя что-то в этом духе но не доделано до конца, т.к. сдувается от некоторых ситуаций, вроде 0.
Исходная версия peregrine, :
Оно не удобно к восприятию.