How to display a string and matrix in MATLAB?

2.138 visualizaciones (últimos 30 días)
Amit Kumar el 18 de Feb. de 2014
Respondida: KAREN MEZA FLORES el 21 de Oct. de 2021
Hi all,
This question can look very basic to some experts of this forum, however the question bugs me as I am not an expert.
Say I initialize A= 3x3 unit matrix.
I want to display:
The result is: followed by matrix A.
I tried fprintf, but I guess it doesn't support matrix and I got errors.
disp() doesn't support displaying text+matrix.
Any idea how to do this?
0 comentariosMostrar -2 comentarios más antiguosOcultar -2 comentarios más antiguos

Iniciar sesión para comentar.

Respuesta aceptada

Jos (10584) el 18 de Feb. de 2014
Editada: MathWorks Support Team el 27 de Nov. de 2018
To display some text and a matrix, you can use two disp statements. This makes the code easy to understand and maintain.
For example, this code:
A = magic(3)
disp('The result is:')
disp(A)
Displays:
The result is:
8 1 6
3 5 7
4 9 2
If a one line solution is needed, you can use the num2str function to convert the matrix to a character array. This displays the contents of the array as a row vector though, changing the original shape of the matrix. To maintain the original shape of the matrix, use the first approach.
For example, this code:
A = magic(3)
disp(['The result is: [' num2str(A(:).') ']']) ;
Displays:
The result is: [8 3 4 1 5 9 6 7 2]
6 comentariosMostrar 4 comentarios más antiguosOcultar 4 comentarios más antiguos
Jos (10584) el 18 de Feb. de 2014
I really fail to see why it should be a single command …
A = magic(3)
% To put it on a single line (using a single command)
disp(['The result is: [' num2str(A(:).') ']']) ;
% and if you insist on using fprintf, try this:
fprintf('\nThe result is: [') ;
fprintf(' %d ', A) ;
fprintf(']\n') ;
Amit Kumar el 20 de Feb. de 2014
Thanks!!

Iniciar sesión para comentar.

Más respuestas (2)

KAREN MEZA FLORES el 21 de Oct. de 2021
bro how do you even code - thanks
0 comentariosMostrar -2 comentarios más antiguosOcultar -2 comentarios más antiguos

Iniciar sesión para comentar.

JIAN CUI el 26 de Oct. de 2016
Same question, sometimes I wish to print sentence like 'The sum of matrix 1...n is N', which involves a matrix [1 .. n] and variable N, as well as strings. So how am I suppose to print this one out? Thank you!
0 comentariosMostrar -2 comentarios más antiguosOcultar -2 comentarios más antiguos

Iniciar sesión para comentar.

Categorías

Más información sobre Data Type Conversion en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by