Creating an array from 1 to n

1.975 visualizzazioni (ultimi 30 giorni)
Agnieszka Polak
Agnieszka Polak il 20 Dic 2019
Hello!
I am trying to create an array of integers from 1 to n [1 2 3 ..... n], where n is a variable that can change.
How should I approach that?
Thank you!
  3 Commenti
Luis Benitez Prieto
Luis Benitez Prieto il 27 Lug 2021
It is elemantary but also not. If you look at the accepted answer below. The answer is creating a double array, the numbers inside are integer values, but not of interger format.
I actually was interested in this question because when I want to create an array of integers I do not want to create a double array in the process by doing something like:
uint32([1:10])
Instead, I would like to directly create an integer array. And thats something I have not easily found in the documentation and a legit question in my opinion. Perhaps thats what the poster is asking for.
Stephen23
Stephen23 il 27 Lug 2021
Modificato: Stephen23 il 27 Lug 2021
@Luis Benitez Prieto: like this:
V = uint32(1):uint32(10)
V = 1×10
1 2 3 4 5 6 7 8 9 10
class(V)
ans = 'uint32'
Note that just one uint32 input is sufficient to define the output as uint32:
class(uint32(1):10)
ans = 'uint32'
class(1:uint32(10))
ans = 'uint32'
Note that the square brackets in your example are superfluous and misleading:

Accedi per commentare.

Risposta accettata

Alex Mcaulley
Alex Mcaulley il 20 Dic 2019
n = 10 %
1:n
ans =
1 2 3 4 5 6 7 8 9 10
  2 Commenti
Rui
Rui il 30 Ott 2021
Modificato: Rui il 30 Ott 2021
how can i get it in reverse order also with a 0 in end?
like this
10 9 8 7 6 5 4 3 2 1 0

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Creating and Concatenating Matrices in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by