why i cant have a=zeros(1:200)?

7 vues (au cours des 30 derniers jours)
ihab
ihab le 22 Sep 2015
Commenté : ihab le 23 Sep 2015
i get these message "Error using zeros Maximum variable size allowed by the program is exceeded" when i use a=zeros(1:200)

Réponses (2)

Guillaume
Guillaume le 22 Sep 2015
zeros(1:200)
means an array of 0s of size 1x2x3x4x5x...x199x200, a 200-D arrays with 200! ~= 8e374 elements. I don't think you'll find a computer with that much memory.
Not sure what you were trying to do. If you want to create a row vector with 200 zeros:
a = zeros(1, 200)
  1 commentaire
ihab
ihab le 23 Sep 2015
thank you very much for your answer.

Connectez-vous pour commenter.


Steven Lord
Steven Lord le 22 Sep 2015
You almost certainly meant a = zeros(1, 200) which creates a 200 element vector containing all 0's. What you wrote tries to create a 1-by-2-by-3-by-4-by-5-by-6-by-7-by-...-194-by-195-by-196-by-197-by-198-by-199-by-200 200-dimensional array.
Even if you created that as a logical array (1 byte per element) that would require about 7e350 yottabytes of memory. Read what would be required to store one yottabyte on that Wikipedia page, and realize that even if you could store one yottabyte of data in each atom in the universe, you still wouldn't come close to the memory required to store that array.
  1 commentaire
ihab
ihab le 23 Sep 2015
well,thank you very much, i think i understand now why.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Shifting and Sorting Matrices dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by