Var
i, c: integer;
sl: string;
begin
readln(sl);
c := 0;
for i := 1 to length(sl) do
begin
if sl[i] = '(' then c := c + 1;
if sl[i] = ')' then c := c - 1;
end;
writeln(c = 0)
end.
Программа проверяет, чтоб в строке было одинаковое количество открывающихся и закрывающихся скобок, что вообще говоря не гарантирует, что скобки расположены правильно.