Модели стола по информатике

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
Denis7788
27.10.2020 21:02
Логическая операция ⊕ - это "исключающее ИЛИ" (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.

Результат:
Исходные значения: a= 50 b= -20 c= 0
Результат обмена: a= -20 b= 0 c= 50
0,0(0 оценок)
Ответ:
emalets20042
07.01.2021 15:54
//PascalABC.NET версия 3.2, сборка 1389
//Если программа не запускается, то обновите версию
uses System.Linq;
begin
    begin
        writeln('I');
        var n := ReadInteger('n=');
        Writeln((1 + 1 + Power(2, n - 1)) * n / 2);
    end;
    
    begin
        writeln;
        writeln('II');
        var n := ReadInteger('n=');
        Writeln(n mod 11 = 0 ? 'YES' : 'NO');
        
    end;
    
    begin
        writeln;
        writeln('III');
        var a := ReadArrInteger('Документы', ReadInteger('n=')).ToList;
        writeln;
        
        while a.Any() do
        begin
            write(a[0], ' ');
            a.RemoveAt(0);
            if not a.Any then break;
            
            write(a.Last, ' ');
            a.RemoveAt(a.Count - 1);
            if not a.Any then break;
            
            var n := 0;
            if a.Count > 1 then n := a.Count div 2 - 1;
            write(a[n], ' ');
            a.RemoveAt(n);
        end;
    end;
end.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота