Ошибка с синусом! Помогите пожалуйста!program calculator;uses crt;label

Ошибка с синусом! Помогите пожалуйста!
program calculator;
uses crt;
label beg,znak,mem,okr;
var a,b,m:real;i,y,r,n:integer;c,o,f,h:char;cos,sin,tan:string;
begin
okr:writeln('Округлять ответ? Если да введите 2, по другому 1.');
readln(o);
while not((o='1')or(o='2'))do begin
writeln('Ошибочное значение. Введите правильное.');
readln(o);
end;
if o='2'then begin
writeln('До скольки символов после запятой округлять?');
readln(n);
end;
if c='n' then goto znak;
mem:writeln('//////////////ПАМЯТКА:Cначала вводите 1-ое число,позже символ,позже по необходимости 2-ое число(Калькулятор зациклен,можно вводить символ и 2-ое число много раз),Всегда читайте данный программкой вопрос до этого чем вводить!');
writeln('Доступные знаки:+,-,*,/,cos,sin,tan; а также:1-корень,2-ступень,3-остаток от дробления,c-поменять знак числа,n-функции округления результата,r-округление числа,t-отбрасывание дробной доли,a-ввод первого числа поновой,b-вызвать памятку,0-конец программы:ПАМЯТКА\\\\\\\\\\\\\\');
if c='b' then goto znak;
beg:writeln('1-ое число?');
readln(a);
znak:
for i:=0 to 999999999 do begin
writeln('Символ?');
readln(c);
if c='n' then goto okr;
if c='0' then break;
if c='a' then goto beg;
if c='b' then goto mem;
while not(c in['+','-','*','/','1','2','3','r','t','c','sin','cos','tan'])do begin
writeln('Символ не поддерживается! Введите верный символ!');
readln(c);
end;
if c='c'then a:=-a;
if c='r'then a:=round(a);
if c='t'then a:=trunc(a);
if c in['1','2']then begin
if c='2'then begin
writeln('В какую степень возвеcти желаете?');
readln(m);
a:=power(a,m);
end
else a:=sqrt(a)
end;
if c in['sin','cos','tan']then begin
writeln('Радианы(r)либо градусы(g)? Введите пожалуйста');
readln(h);
if c='sin' then begin
if h='r' then a:=sin(a);
if h='g' then a:=sin(a*pi/180)
end;
if c='cos' then begin
if h='r' then a:=cos(a);
if h='g' then a:=cos(a*pi/180)
end;
if c='tan' then begin
if h='r' then a:=tan(a);
if h='g' then a:=tan(a*pi/180)
end;
end;
if not(c in['r','t','c','sin','cos','tan','1','2'])then begin
writeln('2-ое число?');
readln(b);
if c='3'then begin
while blt;gt;trunc(b)do begin
writeln('2-ое число обязано быть целым! Введите поновой!');
readln(b)
end;
if alt;gt;trunc(a)then begin
writeln('Округлить a(введите r) или бросить целую часть от a(введите t)?');
readln(f);
case f of
'r':a:=round(a);
't':a:=trunc(a);
end;
end;
r:=trunc(b);
y:=trunc(a);
y:=y mod r;
a:=y
end;
case c of
'+':a:=a+b;
'-':a:=a-b;
'*':a:=a*b;
'/':a:=a/b;
end;
end;
writeln('[lt;:ОТВЕТ:gt;]');
case o of
'2':writeln('=',a:0:n);
'1':writeln('=',a);
end;
end;
end.

Паскаль ABC.
В строке 49(if h='r' then a:=МЕСТО Оплошностиsin(a);) выдает ошибку:Ожидалось имя процедуры или функции. Чем ему синус не нравится? Помогите пожалуйста!

Задать свой вопрос
1 ответ
Могу Вас радовать (либо огорчить): программе не понравится также cos(a); и tan(a);
Вы поначалу объявляете средством
var a,b,m:real;i,y,r,n:integer;c,o,f,h:char;cos,sin,tan:string;
имена sin, cos, tan, как строчки, а потом пытаетесь обратиться к ним, как к функциям, употребляя запись объявленных переменных в формате вызова функций с параметром.

Тягун Максим
Спасибо огромное! Просто наверняка меня переклинило, надо же просто с сделать string? Окончательно глупая ошибка, но я только начал в школе паскаль проходить:)
, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт