program ex27; uses sysutils; var numbers:array [1..2] of integer; loopcounter, loopcounter1, i, loopcounter2, startat, answer, dummy : integer; valid: boolean; input : string; procedure getinput; //WORKS begin //initialise for i := 1 to 2 do numbers[i]:= 0; for loopcounter:=1 to 2 do begin repeat write('Please enter the number: '); readln(input); valid:=true; if length(input)=0 then valid:=false else begin if input[1]='-' then startat:=2 else startat:=1; for loopcounter2:=startat to length(input) do begin if not (input[loopcounter2] in ['0'..'9']) then valid:=false; break; end; end; if not valid then writeln('this is not a valid integer.'); until valid; numbers[loopcounter1]:=strtoint(input); end; end; procedure calculatefibonacci(numbers: array of integer); begin for loopcounter:=1 to 2 do dummy:=numbers[1]+numbers[2]; write(numbers[2]); begin answer:=numbers[1]+numbers[2]; writeln(answer); writeln; end; end; procedure closeprogram; begin write('Press enter to close'); readln; end; begin getinput; calculatefibonacci(numbers); closeprogram; end.