Напишите программу, которая проверяет, не приведет ли суммирование двух заданных целых чисел(Определенного типа) к переполнению.
Ответы на вопрос
Ответил Аноним
0
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.
Новые вопросы