Я не знаю, как это описать очень хорошо (поэтому я не могу его найти), но мне нужна помощь. Допустим, у меня есть 100 из 0 до 200, как я могу соотносить число с 0 до 100, так что это будет 50? Просто отношение количества к меньшему или большему размеру?Округление числа до меньшего или большего размера с тем же отношением
ответ
((Max - value)/Max) * (newMax)
№ Это будет работать, только если значение равно половине максимального. Но '(значение/Макс.) * NewMax' будет работать, если min равно нулю. –
Рассчитайте соотношение между первоначальным максимумом и новым максимумом:
double k = (double)newMax/(double)oldMax
В вашем примере вы бы в конечном итоге со значением 0.5
.
Тогда просто умножить значение с соотношением:
double newValue = value * k;
Если вы хотите целочисленное значение, вокруг него и преобразовать в целое:
int newValue = (int)Math.Round(value * k);
double myRatio, maxValue, newValue;
//value retrieval logics.
double result = (myRatio/maxValue) * newMaxValue;
U должен заполнить двойников на первая строка в. это самый короткий код, который я бы сказал.
В общем случае, когда минимальное не обязательно 0 либо на 'старой' и 'новые шкалы', решение заключается в следующем:
Отношение = (OldValue - oldMin)/(oldMax - oldMin)
новыйValue = новыйMin + (новыйMax - новыйMin) * соотношение
- 1. Округление до большего целого числа с
- 2. нахождение большего и меньшего числа
- 3. Добавление большего или меньшего +/-
- 4. Вычитание большего числа из меньшего числа (Hex)
- 5. batch sqlcmd с использованием большего или меньшего числа операндов
- 6. Флип карта с использованием большего или меньшего
- 7. Центр большего размера div для меньшего div?
- 8. qplot (ggplot2): график большего числа функций с тем же цветом
- 9. Округление числа до десяти
- 10. округление до целого числа
- 11. Изменение размера изображений до меньшего размера
- 12. Изменение размера изображения VMware до меньшего размера
- 13. Округление до ближайшего целого числа
- 14. Сравнить ObjectIDs для большего/меньшего размера в JavaScript
- 15. Изменение размера отчета до большего размера
- 16. Округление числа до десятичных разрядов
- 17. округление до ближайшего числа рубина
- 18. округление числа до сотого места
- 19. Округление двойного числа до ближайшего целого числа
- 20. UIImage уменьшает размер до меньшего размера
- 21. Округление до ближайшего доллара
- 22. Передача меньшего массива в массив большего предполагаемого размера
- 23. Переполнение большего контейнера в пределах меньшего размера и его центрирования
- 24. Рисование большего и меньшего размера UIImageView при прокрутке в iOS
- 25. C# Как получить местоположение меньшего изображения внутри большего размера
- 26. Копирование элементов из большего массива меньшего массива размера в C#
- 27. Экстраполирование OpenPV 'warpPerspective' от меньшего до большего изображения
- 28. Округление до целого числа - Поле управления округлением?
- 29. Округление числа до ближайшего 10 в Postgres
- 30. VBA: округление до ближайшего кратного числа
Вы попробовали _anything_? Я не вижу здесь никакого вопроса программирования. –
Я не думаю, что это место для этого вопроса, но попробуйте что-то вроде (x-x1)/(x2-x1) * (nx2-nx1), которое относится к чему-то вроде (100-0)/(200-0) * (100-0) –