Логическая операция ⊕ - это "исключающее ИЛИ" (xor в языках Паскаль, Бейсик и т.д.), а → операция присваивания. Тогда a⊕b→a; a⊕b→b; a⊕b→a - это был обмен значениями a ↔ b Теперь по этой же схеме обменяем местами b и с: b⊕c→b; b⊕c→с; b⊕c→b. Результат: b→a; c→b; a→c
Программа для иллюстрации: // PascalABC.NET 3.1, сборка 1218 от 12.04.2016 begin var a:=50; var b:=-20; var c:=0; Println('Исходные значения: a=',a,'b=',b,'c=',c); a:=a xor b; b:=a xor b; a:=a xor b; b:=b xor c; c:=b xor c; b:=b xor c; Println('Результат обмена: a=',a,'b=',b,'c=',c) end.
Const n=5; var i: integer; b: real; a: array [1..n] of integer; {если его элементы целые числа (про тип чисел ничего не сказано в задании)} begin for i:=1 to n do read(a[i]); if ((a[1]+a[3]) mod 5 = 0) and (a[5] mod 10 = 3) then begin b:=0; for i:=1 to 5 do b:=b+sqr(a[i]); end else begin b:=1; for i:=1 to 5 do b:=b*sqrt(a[i]); end; writeln(b:1:2); {округление до сотых} if (a[1]+a[2]+a[3])>15 then writeln('да, сумма 1, 2 и 3 чисел больше 15') else writeln('нет, сумма 1, 2 и 3 чисел меньше или равна 15'); if ((a[4]+a[5]) div 10>0) and ((a[4]+a[5]) div 100<0) then writeln('да, сумма 4 и 5 чисел - двузначное число') else writeln('нет, сумма 4 и 5 чисел - не двузначное число'); readln; {чтобы была задержка до нажатия кнопки при выполнении программы и мы могли бы увидеть ответ} end. Решить можно и без использования массива.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку