Логическая операция ⊕ - это "исключающее ИЛИ" (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.
По моему так: program p; var a,b,c:integer; begin writeln('первое число:'); readln(a); writeln('второе число:'); readln(b); writeln('третие число:'); readln(c); if (a>b) and (a>c) then writeln('Первое число является наибольшим'); if (a>b) and (a<c) or (a<b) and (a>c) then writeln('Первое число является средним'); if (a<b) and (a<c) then writeln('Первое число является наимешим'); if (b>a) and (b>c) then writeln('Второе число является наибольшим'); if (b>a) and (b<c) or (b<a) and (b>c) then writeln('Второе число является средним'); if (b<a) and (b<c) then writeln('Второе число является наимешим'); if (c>b) and (c>a) then writeln('Третие число является наибольшим'); if (c>b) and (c<a) or (c<b) and (c>a) then writeln('Третие число является средним'); if (c<b) and (c<a) then writeln('Третие число является наимешим'); end.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку