2011-10-05 15 views
16

Załóżmy, że mam zmienną o nazwie "x" i x=5.Wyjście konsoli MATLAB

chciałbym zrobić:

disp('x is equal to ' + x +'.'); 

i mają drukowanych kodów:

x jest równa 5.

To jak jestem przyzwyczajony do robienia rzeczy w Javie, więc ich musi być podobny sposób do tego w MATLAB.

Dzięki

Odpowiedz

55

Jeśli chcesz użyć disp można skonstruować ciąg do wyświetlania tak:

disp(['x is equal to ',num2str(x),'.']) 

Osobiście wolę używać fprintf, które należy użyć następującej składni (i daje mi pewną kontrolę nad formatowaniem wartości x)

fprintf('x is equal to %6.2f.\n',x); 

można, oczywiście, jak również dostarczyć x ciąg i uzyskaj takie same wyniki, jak disp (podaj lub zrób kilka linii podziału).

fprintf('x is equal to %s\n',num2str(x)) 
0

Drukowanie kilku zmiennych skalarnych w Matlab to bałagan (patrz odpowiedź powyżej). posiadanie funkcji podobnej do tej w ścieżce wyszukiwania pomaga:

function echo(varargin) 
str = ''; 
for k=1:length(varargin) 
    str = [str ' ' num2str(varargin{k})]; 
end 
disp(str) 
Powiązane problemy