Hi,
I want to create the following matrix:
M = 1 2 3 4
0 0 0 3
0 0 0 2
0 0 0 1
I'm only supposed to use the vector r = 1:4 and no other functions. This is what I got so far:
M=r
M(1:4, 4)=r
But this results in
M = 1 2 3 1
0 0 0 2
0 0 0 3
0 0 0 4
So now I'm stuck. Does anybody know how to "reverse" the last column so that it reads 4 3 2 1 instead of 1 2 3 4?
All help is greatly appeciated!
Cheers,
Dobs

 採用された回答

Image Analyst
Image Analyst 2021 年 10 月 23 日

0 投票

You need to put r in in reverse order, so assuming you're not allowed to use flipud(r), try:
r = 1:4
M(1:4, 4)= r(end : -1 : 1);
Then you need to set row 1:
M(1, ......................

1 件のコメント

Dobs
Dobs 2021 年 10 月 23 日
Yes, that worked! Thank you so much!

サインインしてコメントする。

その他の回答 (1 件)

John D'Errico
John D'Errico 2021 年 10 月 23 日
編集済み: John D'Errico 2021 年 10 月 23 日

0 投票

Hint: What does flip do? Could you use it to "flip" the order of those numbers?

1 件のコメント

Dobs
Dobs 2021 年 10 月 23 日
I think we're not allowed to use it since we're only supposed to use the vector r and no other functions. But I just tried it and it works too! Will keep this in mind for the next time I need to reverse the numbers in a vector. Thank you so much for your help!

サインインしてコメントする。

カテゴリ

製品

リリース

R2021b

質問済み:

2021 年 10 月 23 日

コメント済み:

2021 年 10 月 23 日

Community Treasure Hunt

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

Start Hunting!

Translated by