40 lines
		
	
	
	
		
			791 B
		
	
	
	
		
			OpenEdge ABL
		
	
	
	
	
	
			
		
		
	
	
			40 lines
		
	
	
	
		
			791 B
		
	
	
	
		
			OpenEdge ABL
		
	
	
	
	
	
|   program example(output);
 | |
|   {This program just demonstrates typical EM code.}
 | |
|   type rec = record r1: integer; r2:real; r3: boolean end;
 | |
|   var mi: integer;  mx:real;  r:rec;
 | |
| 
 | |
|   function sum(a,b:integer):integer;
 | |
|   begin
 | |
|     sum := a + b
 | |
|   end;
 | |
| 
 | |
|   procedure test(var r: rec);
 | |
|   label 1;
 | |
|   var   i,j: integer;
 | |
| 	x,y: real;
 | |
| 	b: boolean;
 | |
| 	c: char;
 | |
| 	a: array[1..100] of integer;
 | |
| 
 | |
|   begin
 | |
| 	j := 1;
 | |
| 	i := 3 * j + 6;
 | |
| 	x := 4.8;
 | |
| 	y := x/0.5;
 | |
| 	b := true;
 | |
| 	c := 'z';
 | |
| 	for i:= 1 to 100 do a[i] := i * i;
 | |
| 	r.r1 := j+27;
 | |
| 	r.r3 := b;
 | |
| 	r.r2 := x+y;
 | |
| 	i := sum(r.r1, a[j]);
 | |
| 	while i > 0 do begin j := j + r.r1; i := i - 1 end;
 | |
| 	with r do begin r3 := b;  r2 := x+y;  r1 := 0 end;
 | |
| 	goto 1;
 | |
|   1:    writeln(j, i:6, x:9:3, b)
 | |
|   end; {test}
 | |
|   begin {main program}
 | |
|     mx := 15.96;
 | |
|     mi := 99;
 | |
|     test(r)
 | |
|   end.
 |