When you type m(1) or m(10) in the command window, what is happening?

1 view (last 30 days)
m(1)
ans =
-3
m(10)
ans =
0.6000
m(0)
Array indices must be positive integers or logical
values.
m(0) does not work because it needs to have a positive integer or logical value but what is happening when you do use a correct number?

Answers (1)

Awais Saeed
Awais Saeed on 16 Nov 2021
Let's say you have an array of 10 elements
arr = [1 2 5 4 7 0 3 6 1 9];
To access first element, you use
arr(1)
ans = 1
to access 5th element, you use
arr(5)
ans = 7
So your m(1) and m(10) means to access first and 10th element of array m. Same goes for a matrix.
  2 Comments
John D'Errico
John D'Errico on 16 Nov 2021
@ssmith: It is not that the matrix does not contain a zero in it, if that is what you are asking.
MATLAB uses a 1-based index origin. The first element is element number 1. Yes, other languages use a zero origin. But that is just an arbitrary choice. Regardless, m(0) fails, because the zero'th element does not exist.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!

Translated by