Построение графика табулирования функции на delphi
Не могу построить график функции, чтобы через консоль вводилось значение, а после картинка графика.
program Project1;
{$APPTYPE CONSOLE}
{$R *.res}
uses
System.SysUtils,
Unit2 in 'Unit2.pas' {Form2};
var
ar: array [0..12] of string = ('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '-', '.', ',');
a,b,h,x,y: real; o: string;
function wrtn(): string;
var x: string; j, lgbt, dot, i: integer;
begin
read(x);
dot := 0;
lgbt := 0;
result := '';
if ((x = ' ') or (x = '-') or (x = '.') or (x = ',')) then begin
writeln('Ошибка: 0некорректное значение');
result := 'Ошибка';
end;
for i := 1 to x.Length do begin
if ('-' = x[i]) and (i <> 1) then begin
writeln('Ошибка: 1некорректное значение');
result := 'Ошибка';
end;
if (',' = x[i]) or ('.' = x[i]) then
dot := dot + 1;
if (dot > 1)then begin
writeln('Ошибка: 2некорректное значение');
result := 'Ошибка';
end;
for j := 0 to 12 do begin
if x[i] = ar[j] then
lgbt := lgbt + 1;
end;
end;
if lgbt < x.Length then begin
writeln('Ошибка: 3некорректное значение');
result := 'Ошибка' ;
end;
if result <> 'Ошибка' then
result := x;
readln;
end;
function whle(): real;
var a: string;
begin
a := 'Ошибка';
while (a = 'Ошибка') do
a := wrtn().replace(',', '.');
result := StrToFloat(a);
end;
procedure znach();
begin
x := a;
while x<=b do begin
y:= sin(x);
writeln('| ',x:0:0,' | ',y:0:3,' |');
writeln('--------------');
x:=x+h;
end;
end;
begin
begin
while a>=b do begin
write('Введите начальное значение: ');
a:= whle();
write('Введите конченое значение: ');
b := whle();
if a>=b then writeln('Ошибка: некорректный промежуток');
end;
while h<=0 do begin
write('Введите шаг: ');
h := whle();
if h<=0 then writeln('Ошибка: недоупстимое значние шага');
end;
znach();
readln
end;
end.