Я написал функцию, которая имеет толерантность как один из ее входов, и мне интересно, как установить выход с тем же числом десятичных знаков, что и допуск? Я знаю, что вы можете использовать sprintf
для установки числа десятичных точек, но я не могу решить, как установить его равным тому же количеству десятичных точек, что и в моем допуске. Я хочу, чтобы он округлился до определенной степени, заданной tol
, который является входом. Поэтому, если я ставлю допуск как 0.001
, это то, что я хочу, и это то, что мне сложно сделать.Имейте переменную длину вывода в Matlab
0
A
ответ
1
0
округление до ближайшей единицы данного допуска, разделить по этой терпимости, округление до ближайшего целого числа и умножить результат на первоначальный допуск:
round(x/tol)*tol
Если вы имеете в виду предположить, что tol
представляет собой целое число знаков после запятой, вы можете определить, что номер с log10
:
places = round(-log10(tol));
Вы можете использовать этот результат непосредственно в sprintf
:
output = sprintf('%.*f', places, x);
Смежные вопросы
- 1. Имейте переменную во внутреннем классе
- 2. Результаты вывода вывода в переменную
- 3. Как сохранить переменную длину
- 4. Создать переменную длину `alist()`
- 5. Как захватить переменную длину
- 6. Ввод вывода в переменную
- 7. Как подсчитать длину вывода печати в Python?
- 8. Как подсчитать длину вывода в Perl
- 9. Определить переменную в matlab
- 10. MATLAB вычислить длину целого числа
- 11. Как параметризовать переменную длину строк?
- 12. Почему stackalloc принимает переменную длину?
- 13. Как отобразить переменную длину мантиссы
- 14. JSTL задает переменную длину строки
- 15. Функция C++, возвращающая переменную длину
- 16. Масштаб вывода FFT (MATLAB)
- 17. Сохранение вывода трубы в переменную
- 18. Сохранение Rails вывода в переменную
- 19. Вывести форматирование вывода в переменную
- 20. отправка вывода «ping» в переменную
- 21. Результат вывода LFTP в переменную
- 22. Хранение вывода ajax в переменную
- 23. Использовать переменную в кавычках вывода?
- 24. Сохранение вывода awk в переменную
- 25. Имейте командную кнопку в качестве части текста вывода
- 26. Имейте VS автоматически скопировать DLL в исполняемый каталог вывода
- 27. Как получить длину файла в MATLAB?
- 28. как найти максимальную длину массива в matlab
- 29. Как получить длину YTickLabels в MATLAB?
- 30. Найти длину изогнутой линии в Matlab
Если вы хотите, чтобы ваш ответ, округленный до определенного (скажем 'd') количество цифр, то вы всегда можете закончить функцию с' ответ = round (ответ * 10^d)/(10^d) '. –
Начиная с R2014b, вы также можете просто выполнить ответ: round = ответить (ответить, d) ' – Will