как показать определенное количество десятичных цифр - PullRequest
2 голосов
/ 18 ноября 2010

Как в Matlab управлять количеством десятичных цифр для отображения в командном окне?

Например,

>> х = 0,4654

x =

0.4654

как отобразить значение переменной x как 0,5, 0,47, 0,465 соответственно в командном окне?

Спасибо!

Ответы [ 3 ]

4 голосов
/ 18 ноября 2010

Я не думаю, что есть встроенное округление до произвольных мест, но вы можете получить округленный результат, выполнив раунд (x * 10 ^ количество мест ) / 10 ^ количествоместа .Это распечатывает с конечными нулями, если вы хотите избавиться от тех, кому нужно сделать специально отформатированный отпечаток, такой как sprintf, в градусах, так что в вашем случае вы можете получить желаемые результаты, выполнив:1007 * Надеюсь, это поможет!

Редактировать: Если вы хотите сделать это для матриц, я не уверен, что есть лучший способ, но вы могли бы просто перебрать строки, заданные x в виде матрицы:

for i=1:length(x(:,1)),
disp(sprintf('%.2f\t', round(x(i,:)*100)/100))
end
2 голосов
/ 18 ноября 2010

Вы можете управлять командным окном с помощью команды format.Я предлагаю вам взглянуть на doc format, который дает вам конкретные варианты.

Если вам нужна большая точность, вам лучше использовать disp и / или функцию округления, например: z = round(x/y)*y

0 голосов
/ 08 мая 2013

Изменить формат.

format shortG
...