Fractions as array indices in for loop

2 vues (au cours des 30 derniers jours)
Stephan van Kalmthout
Stephan van Kalmthout le 11 Fév 2020
Commenté : Walter Roberson le 12 Fév 2020
Why isn't it possible to use fractions as array indices?
I know it won't work, but why doesn't it work and are there ways to work around this?
  3 commentaires
dpb
dpb le 11 Fév 2020
That's good insight to bring in the data aspect as perhaps the unstated but underlying question, Stephen... +1.3
Walter Roberson
Walter Roberson le 12 Fév 2020
Under your proposal, given an array with dimension 100, what location would 0.13 correspond to? 0.135? 1/7? 0? sqrt(2)? Would the fraction 3/6 be different than 6/12?
Would your answer about 0.13 change if you knew that in MATLAB, 0.13 has to be approximated by 0.13000000000000000444089209850062616169452667236328125 and so that if you just multiply the fraction by the length of the dimension then except for some special fractions, you do not generally end up with a nice integer?

Connectez-vous pour commenter.

Réponses (1)

dpb
dpb le 11 Fév 2020
Short answer? "Because!" TMW hath so decreed.
I'm sure it's mostly performance related as well as ease of code development and maintenance. Having to wrap every array access with a rounding operation would be a real performance bottleneck.
Undoubtedly other reasons as well...

Catégories

En savoir plus sur Matrix Indexing dans Help Center et File Exchange

Produits


Version

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by