1. Можно осуществить обмен через операции сложение и вычитания, произведения и деления.
Например:
x:=x+y
y:=x-y
x:=x-y
2. Из недостатков вижу только то, что происходя вычисления а не только присваивания.
3. Если используется алгоритм со сложением и вычитанием, то его можно применять для вещественных чисел.
Program g;
var a,b,c,i:integer;
begin
writeln('Введите количество чисел');
readln(a);
c:=1;
writeln('Введите ', a, ' чисел(а)');
for i:=1 to a do
begin
readln(b);
c:=c*b;
end;
writeln('Произведение чисел=',c);
readln;
<span>end.
Program g;
var a,b,c:integer;
begin
writeln('Введите 2 числа');
readln(a,b);
if (a+b)>0 then
c:=(a*a)+(b*b)
else
c:=(a+b)*(a+b);
writeln('Результат=',c);
readln;
<span>end.
</span>
Третье задание не понял.</span>
COUNTRY:
USA : RUSSIA:
INFO : ;washington.txt INFO:
culture.txt industry.txt ; culture.txt
Var s:string;
begin
write ('Введите слово: '); read(s);
writeln('Количество символов в слове = ',length(s));
if s[2] = s[length(s)-1] then writeln('Вторая и предпоследняя буквы совпадают') else <span>writeln('Вторая и предпоследняя буквы не совпадают');
end.</span>