//PascalABC.NET 3.1 сборка 1219
begin
var a := ArrRandomInteger(10, -900, 900);
a.Println;
Writeln('Max = ', a.Max);
Writeln('Min = ', a.Min);
end.
Составляем таблицу, в которой на пересечении строки и столбца будем ставить X, если такая комбинация невозможна, и V, если мы определили профессию. У меня будет также написан номер утверждения, в соответствии с которым ставился этот значок:
- <em>Петров и Гришин никогда не держали в руках малярной кисти</em> - значит, Петров и Гришин - не маляры.
- <em>Иванов и Гришин все собираются посетить мельницу, на которой работает их товарищ </em>- Иванов и Гришин - не мельники.
- <em>Петров и Иванов живут в одном доме с почтальоном </em>- Петров и Иванов - не почтальоны.
- <em>Иванов и Сидоров каждое воскресенье играют в городки с плотником и маляром</em> - Иванов и Сидоров - не плотники и не маляры.
- <em>Петров брал билеты на футбол для себя и мельника</em> - Петров - не мельник.
- У Иванова остается только вариант быть парикмахером, остальные - не парикмахеры.
- Петров - плотник, остальные не плотники
- Гришин - почтальон, остальные не почтальоны
- Сидоров - мельник, Алексеев - не мельник
- Алексеев - маляр
Ответ: Иванов - парикмахер, Петров - плотник, Гришин - почтальон, Сидоров - мельник, Алексеев - маляр
Начало (овал)
Ввод данных (параллелограмм)
Цикл (ромб)
Вычисления (прямоугольник)
Вывод данных (параллелограмм)
конец (овал)
при n = 2:
по началу i равен одному, а S нулю. Далее i <= n, то есть 1 <= 2, ответ да. К S прибавляется i, и S будет равен одному. Еще к i прибавляется 2, и i становится тройкой. Возвращаемся к началу алгоритма, но с новыми значениями, i у нас равен трем, а S равен одному. Далее проверяется условие i <= n, то есть 3<=2. Ответ нет, и выводится ответ S. А S равен однерке.
Ответ: 1