Using variable as limiting index counts one less.
Show older comments
Hello fellow Mathworkers,
i encountered a strange behavior when reading from an array:
Let's say my array is A = zeros(1,100000) and i want B = A(1:50000) and C = A(50001:100000)
B and C are both 1x50000 double. That's what i want.
But when reading it like B = A(start:stop) and start = 1 and stop = 50000, B will be only 1x49999 double.
Is this a bug or am i missing something?
Thanks in advance!
4 Comments
Awais Saeed
on 21 Aug 2021
Edited: Awais Saeed
on 21 Aug 2021
I am getting B = A(start:stop) = 1x50000 with start = 1 and stop = 50000.
Paul Werner
on 21 Aug 2021
Paul Werner
on 21 Aug 2021
A = zeros(1,100000);
start = 1;
stop = 50000;
B = A(start:stop)
"Propably i missed something ... When using stop = 1/2e-5 my problem occures."
You did not take into account the behavior of binary floating point numbers.
Answers (0)
Categories
Find more on Matrix Indexing in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!