Вариант 2. Дело в том, что в паскале перед else не ставится точка с запятой. Следующая ошибка : (‘c=’, c); Что за странные запятые? И да, зачем все усложнять и добавлять еще одну переменную? Можно все одной переменной. Вот правильный код :
program A;var b: integer;begin
readln (b);
if b>=0 then
b:=b*b
else b:=-b*b*b;
writeln ('c=', b);
end.