I have a value X, a value DX and an odd integer N (say N=9) and want to create an array such that
let X = 10, DX = 2 and N = 9
DIST(1) = X - 4 * DX
DIST(2) = X - 3 * DX
DIST(3) = X - 2 * DX
DIST(4) = X - DX
DIST(5) = X
DIST(6) = X + DX
DIST(7) = X + 2 * DX
DIST(8) = X + 3 * DX
DIST(9) = X + 4 * DX
How can I do a loop to do this?
It should looks like:
for( i=-4; i<=4; i++ ) {
DIST[i+5] = X + i * DX
}
Notice how the values of DIST(i) can be assigned alternatively -
DIST(1) = X - 4 * DX = X + (-5 + 1) * DX
DIST(2) = X - 3 * DX = X + (-5 + 2) * DX
DIST(3) = X - 2 * DX = X + (-5 + 3) * DX
DIST(4) = X - DX = X + (-5 + 4) * DX
DIST(5) = X = X + (-5 + 5) * DX
DIST(6) = X + DX = X + (-5 + 6) * DX
DIST(7) = X + 2 * DX = X + (-5 + 7) * DX
DIST(8) = X + 3 * DX = X + (-5 + 8) * DX
DIST(9) = X + 4 * DX = X + (-5 + 9) * DX
Assuming you want to use X, DX, N and DIST in your loop construct, you could do something like this -
for( i = 1; i <= N; i++ )
{
DIST = X + (-5 + i) * DX
}
tyler_durden