How to remove Zeros in the array

r=5;
for x=1:r
for y=1:x
A(x,y)=x.*y;
end
end
In this code I want Matlab to print the multiplication table using a nested for loop. The for loop works but does not print what I want.
I want it to look something like this:
1
2 4
3 6 9
4 8 12 16
5 10 15 20 25
How do I get Matlab to not place 0s in the empty spaces?

回答 (1 件)

Image Analyst
Image Analyst 2020 年 11 月 6 日

0 投票

Try this:
r=5;
for row=1:r
for col=1:row
A(row,col)=row.*col;
end
fprintf('%4d ', A(row, 1:row))
fprintf('\n');
end
A
You'll see this:
1
2 4
3 6 9
4 8 12 16
5 10 15 20 25
A =
1 0 0 0 0
2 4 0 0 0
3 6 9 0 0
4 8 12 16 0
5 10 15 20 25

カテゴリ

ヘルプ センター および File ExchangeLoops and Conditional Statements についてさらに検索

タグ

質問済み:

2020 年 11 月 6 日

回答済み:

2020 年 11 月 6 日

Community Treasure Hunt

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

Start Hunting!

Translated by