Выход консоли MATLAB
Скажем, что у меня была переменная с именем "x
" и x=5
.
Я хотел бы сделать:
disp('x is equal to ' + x +'.');
и напечатать этот код:
x равно 5.
Вот как я привык делать вещи на Java, поэтому они должны быть аналогичным способом сделать это в MATLAB.
Спасибо
Ответы
Ответ 1
Если вы хотите использовать disp
, вы можете построить строку для отображения следующим образом:
disp(['x is equal to ',num2str(x),'.'])
Я лично предпочитаю использовать fprintf
, который использовал бы следующий синтаксис (и дает мне некоторый контроль над форматированием значения x)
fprintf('x is equal to %6.2f.\n',x);
Вы можете, конечно, также поставлять x
в качестве строки и получать тот же результат, что и disp
(дать или взять несколько разрывов строк).
fprintf('x is equal to %s\n',num2str(x))
Ответ 2
распечатка нескольких скалярных переменных в Matlab - беспорядок (см. ответ выше). наличие такой функции в вашем пути поиска помогает:
function echo(varargin)
str = '';
for k=1:length(varargin)
str = [str ' ' num2str(varargin{k})];
end
disp(str)
Ответ 3
просто вложите sprintf() в disp().
disp(sprintf("X is equal to %d.",x));