truncating a long for loop

2 vues (au cours des 30 derniers jours)
Talaria
Talaria le 30 Nov 2012
i wrote a program and it includes a for loop, on running this program matlab says the "for loop is too long, truncating to..."
what does this mean and how does it affect my program?

Réponses (1)

Jos (10584)
Jos (10584) le 30 Nov 2012
Modifié(e) : Jos (10584) le 30 Nov 2012
Similar to this?
N = Inf ;
for k=1:N,
if k > 10, break ; end
end
which will get you a warning: Warning: FOR loop index is too large. Truncating to 9223372036854775807.
So, check your N!
  2 commentaires
Talaria
Talaria le 30 Nov 2012
Modifié(e) : Talaria le 30 Nov 2012
i know my N is big, actually my N=2^41 my question is whether the loop will complete to N or it will terminate early, is that what truncating means? if not then what does it mean? And does that depend on my computer??
Jan
Jan le 30 Nov 2012
Modifié(e) : Jan le 30 Nov 2012
Here truncating mean, that the FOR loop cannot "carry" such a large index vector. This is a problem of the internal representation of numbers.
Imagine the processing of a loop iteration takes 1e-3 seconds (a fair assumption). How long will it take to perform 2^41 iterations?

Connectez-vous pour commenter.

Catégories

En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange

Tags

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by