How to generate a matrix with number of lines inserted from keyboard

1 回表示 (過去 30 日間)
Fiddl Sticks
Fiddl Sticks 2019 年 6 月 17 日
コメント済み: Star Strider 2019 年 6 月 17 日
I have to generate a matrix with i lines and j=i+1 collumns whose elements:
=2 if i=j;
=-1 if | i -j |=1;
=0 otherwise.
Here's my attempt at solving this problem:
prompt='Insert number of lines';
i=input(prompt)
j=i+1
% getting the number of lines and collumns
if i==j
A=2*ones(i,j);
end
% checking the first condition for i and j
else if abs(i-j)==1
A=-1*ones(i,j);
end
% checking the second condition for i and j
else
A=zeros(i,j)
% checking the third condition for i and j
end
end
A
% displaying matrix A
And I get this error when I try run it:
else if abs(i-j)==1
|
Error: Illegal use of reserved keyword "else".
I don't understand what I'm doing wrong.

採用された回答

Star Strider
Star Strider 2019 年 6 月 17 日
You had too many end statements. They were defining very short if blocks, and so some of those blocks did not begin correctly as a result.
Your code still has problems (it is not doing what you want it to). Since this appears to be a homework assignment, I will defer to you to get it running correctly.
This runs:
if i==j
A=2*ones(i,j);
% checking the first condition for i and j
elseif abs(i-j)==1
A=-1*ones(i,j);
% checking the second condition for i and j
else
A=zeros(i,j)
% checking the third condition for i and j
end
  8 件のコメント
Fiddl Sticks
Fiddl Sticks 2019 年 6 月 17 日
But that's not all elements of A equal to 5.
This would be all elements of A equal to 5:
A =
5 5 5 5 5 5
5 5 5 5 5 5
5 5 5 5 5 5
5 5 5 5 5 5
5 5 5 5 5 5
Star Strider
Star Strider 2019 年 6 月 17 日
In my example, I did not set all the elements equal to 5. I set only the elements where K1>K2 equal to 5. That was the point of the example.
Perhaps I should have phrased it: ‘... to set all elements of ‘A’ for K1 > K2 equal to 5

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

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLoops and Conditional Statements についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by