Const low=-32768; high=32767; Var i, j :integer; begin readln(i,j); if sign(i)*sign(j)<0 then writeln('Сложение допустимо, результат ',i+j) else if i<0 then if j<low-i then writeln('Сложение недопустимо: возникнет переполнение') else writeln('Сложение допустимо, результат ',i+j) else if j>high-i then writeln('Сложение недопустимо: возникнет переполнение') else writeln('Сложение допустимо, результат ',i+j) end.
low=-32768;
high=32767;
Var i, j :integer;
begin
readln(i,j);
if sign(i)*sign(j)<0 then writeln('Сложение допустимо, результат ',i+j)
else
if i<0 then
if j<low-i then writeln('Сложение недопустимо: возникнет переполнение')
else writeln('Сложение допустимо, результат ',i+j)
else
if j>high-i then writeln('Сложение недопустимо: возникнет переполнение')
else writeln('Сложение допустимо, результат ',i+j)
end.