Напишите линейную программу, в результате выполнения которой целочисленные переменные х и у обменяются значениями. При этом нельзя использовать дополнительные переменные. Найдя такой алгоритм, определите, в чем его недостаток по сравнению с методом обмена через третью переменную. Можно ли его применять для вещественных чисел?
Ответы
Ответ дал:
0
var a, b: integer;
begin
a := 5;
b := 12;
writeln('a = ', a);
writeln('b = ', b);
a := a + b;
b := a - b;
a := a - b;
writeln('new a = ', a);
writeln('new b = ', b);
end.
Недостаток этого алгоритма в том, что может произойти переполнение целочисленного типа. Можно применять этот алгоритм и для вещественных чисел, однако может потерятья небольшая точность.
begin
a := 5;
b := 12;
writeln('a = ', a);
writeln('b = ', b);
a := a + b;
b := a - b;
a := a - b;
writeln('new a = ', a);
writeln('new b = ', b);
end.
Недостаток этого алгоритма в том, что может произойти переполнение целочисленного типа. Можно применять этот алгоритм и для вещественных чисел, однако может потерятья небольшая точность.
Ответ дал:
0
Спасибо!!!
Похожие вопросы
2 года назад
2 года назад
7 лет назад
7 лет назад
9 лет назад
10 лет назад
10 лет назад