summaryrefslogtreecommitdiff
path: root/ecomp-c/tests/example_reverse_array.e
blob: b3afec3f99f329813a05ca658f9d2a09acfbd822 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
/*
 * reverse an array in place
 *
 */

module example_reverse_array;

const
	N : integer = 10;
	
var
	i, tmp : integer;
	a : array N of integer;

begin
	// initialize the array
	i := 0;
	while i < N do
		a[i] := i;
		i := i+1;
	end;
	
	// now revert it (in-place)
	i := 0;
	while i < N div 2 do
		tmp := a[i];
		a[i] := a[N-1-i];
		a[N-1-i] := tmp;
		i := i+1;
	end
end