fprint f for a matrix
조회 수: 5 (최근 30일)
이전 댓글 표시
say i have a nXm matrix of numbers and i need to print it with tabs between itch element how should it be done?
my matrix is
0 3 0
1 2 3
and i want to print it with nonthing where the zeros are and tabs beetween the numbers
i calld he matrix z
and tried this
fprintf('%d\t%d\t%d\n',z(1,1:end))
fprintf('%d\t%d\t%d\n',z(2,1:end))
but its not working
댓글 수: 1
답변 (2개)
Sarthak
2023년 2월 20일
Hi,
You can use a ‘for’ loop to do the same.
Please refer to the following code to understand the problem:
z = [0 3 0; 1 2 3];
[n, m] = size(z);
for i = 1:n
for j = 1:m
if z(i,j) == 0
fprintf('\t')
else
fprintf('%d\t', z(i,j))
end
end
fprintf('\n')
end
This will produce the following output:
3
1 2 3
댓글 수: 0
Jan
2023년 2월 20일
x = [0 3 0; 1 2 3];
c = sprintfc('%g', x.');
c(x.' == 0) = {''};
fprintf('\t%s\t%s\t%s\n', c{:})
% Or:
s = compose("%g", x);
s(s == "0") = "";
fprintf('\t%s\t%s\t%s\n', s.')
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Financial Toolbox에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!