Answer:
defines the set of values [ 1, 2, 3, 4, 5 ], and the range
1 : 3 : 5
defines the set of values [ 1, 4 ].
Although a range constant specifies a row vector, Octave does not normally convert range constants to vectors unless it is necessary to do so. This allows you to write a constant like 1 : 10000 without using 80,000 bytes of storage on a typical 32-bit workstation.
A common example of when it does become necessary to convert ranges into vectors occurs when they appear within a vector (i.e., inside square brackets). For instance, whereas
x = 0 : 0.1 : 1;
defines x to be a variable of type range and occupies 24 bytes of memory, the expression