Вход на сайт
Задачка
3108 просмотров
Перейти к просмотру всей ветки
в ответ alex445 20.05.25 21:06, Последний раз изменено 20.05.25 21:16 (alex445)
Хотя, с таким подходом мы же увеличиваем вычисления на одно действие. Щас приведу свой код для расчёта доли. У меня там проверки ещё (кстати, забыл проверку на равенство минимума и максимума, иначе в знаменателе будет ноль), что не позволяет сделать расчёт универсальным.
public static float Fraction(float min, float max, float current) { if (min > max) throw new ArgumentOutOfRangeException($"Min value {min} should be less than or equal to max value {max}."); if (current < min || current > max) throw new ArgumentOutOfRangeException( $"Current value {current} should be greater than or equal to min value {min} and less than or equal to max value {max}."); return MathF.Abs(current - min) / Math.Abs(max - min); }