From help-request at octave dot org Tue Nov 22 19:54:21 2005 Subject: Re: Question about Range class From: "John W. Eaton" To: "Robert A. Macy" Cc: Marek Szczypinski , help@octave.org Date: Tue, 22 Nov 2005 20:28:53 -0500 On 22-Nov-2005, Robert A. Macy wrote: | >From a newbie and untested... | | double z[100]; | | for (int i = 0; i < 100; i++) | z[i] = 0.1 + ( static_cast(i) )/10.0; Octave has a Range class for this kind of operation, so you don't have to do it by hand. Note that your code assumes you know precisely how many elements are in the range. If someone just hands you the base, limit, and increment for the range, are you sure you could calculate the best approximation of the number of elements? Do you think it is a simple calculation? You might be surprised by the answer (take a look at the code that does this in src/Range.cc)! | Marek Szczypinski wrote: | > Hello, | > how should I write | > z = [ 0 : 0.1 : 10 ] in c++? | > thanks, | > marek For 0:0.1:10, try Range r (0.0, 10.0, 0.1); // base, limit, increment In Octave, if you write [0:0.1:10] the result is actually a Matrix object, so you would need to write Range r (0.0, 10.0, 0.1); // base, limit, increment Matrix m = r.matrix_value (); jwe ------------------------------------------------------------- Octave is freely available under the terms of the GNU GPL. Octave's home on the web: http://www.octave.org How to fund new projects: http://www.octave.org/funding.html Subscription information: http://www.octave.org/archive.html -------------------------------------------------------------