miksboy
16.09.2020 12:37

Задача D. Кисть Имеется квадратное поле со стороной N. Все ячейки этого поля
изначально находятся в состоянии «не закрашено». Робот, начинающий свое
движение с верхней левой ячейки, может двигаться по этому полю и
инвертировать состояние каждой ячейки. Считается, что при установке робота
на поле он инвертирует первую ячейку, таким образом только она в
изначальном положении оказывается в положении «закрашено».
Робот умеет принимать следующие команды:
right [value] – Двигаться вправо на value единиц.
down [value] – Двигаться вниз на value единиц.
При подаче отрицательных value робот должен двигаться в
противоположные стороны. При достижении границы робот переносится на
противоположную сторону поля.
Робот, при движении, инвертирует состояние ячейки, на которую он
встает, таким образом за два посещения одной ячейки он восстанавливает её
состояние.
Необходимо реализовать логику работы робота, последовательно
считывая и выполняя команды.
Формат входных данных
В первой строке подается единственное число N – ширина квадратного
поля.
Во второй строке подается единственное число M – количество команд
для робота.
Далее в M строках подаются команды для робота. Аргументы разделены
пробелом.
2 <= N <= 1000
0 <= M <= 100000
-1000000 <= [value] <= 1000000
Формат выходных данных
Необходимо вывести итоговое состояние поля. Для закрашенной ячейки
использовать символ ‘+’, для не закрашенной – ‘-‘.
Необходимо вывести N строк, в которых по N символов,
определяющих значения в ячейках.
Пример
Ввод Вывод
4 0 +---




4 -+++
2 +---
right 4 +---
down 3 +---

5
4 +---+
right 4 +---+
down 4 +---+
right -4
down -3

Задача E. Ниточка
На прямой дощечке вбиты гвоздики. Любые два гвоздика можно
соединить ниточкой. Требуется соединить какие-то пары гвоздиков
ниточками так, чтобы к каждому гвоздику была привязана хотя бы одна
ниточка, а суммарная длина всех ниточек была минимальна.
Формат входных данных
В первой строке входных данных подается число N – количество
гвоздиков. В следующей строке записано N чисел - координаты всех гвоздиков
(неотрицательные целые числа, не превосходящие 10000).
2 < N < 100
Формат выходных данных
Необходимо в единственной строке вывести минимальную суммарную
длину всех ниточек
Пример
Ввод Вывод
5 6
4 10 0 12 2
Задача F. Нумерация досок
Гильдия шахматистов решила пронумеровать шахматные доски при
специального аппарата, печатающего номера на клейкой ленте.
Клавиатура данного аппарата выглядит следующим образом:
Шахматисты решили, что все номера досок должны набираться ходами
коня. Также они условились, что с цифр 8 и 0 номера начинаться не могут.
Например – корректный номер может выглядеть так – 76183.
Необходимо посчитать, сколько всевозможных номеров определенной
длины можно набрать на данном аппарате, следуя установленным правилам.
Формат входных данных
В единственной строке подается число N – длина номера шахматной
доски.
1 <= N <= 100
Формат выходных данных
Необходимо вывести единственное число – количество различных
номеров, которые можно набрать на описанном аппарате, следуя
установленным правилам.
Пример
Ввод Вывод
1 2
8 16

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
SuperLexa555
20.10.2021 00:11

Введение

Программное обеспе́чение (произношение обеспече́ние не рекомендуется) — наряду с аппаратными средствами, важнейшая составляющая информационных технологий, включающая компьютерные программы и данные, предназначенные для решения определённого круга задач и хранящиеся на машинных носителях.

Программное обеспечение представляет собой алгоритм, реализованный в виде последовательности инструкций для процессора.

вот так вот

В компьютерном жаргоне часто используется слово «софт» от английского software.

Ну думаю знаете

По назначению программное обеспечение разделяется на системное, прикладное и инструментальное.

Если еще подробнее пишите в лс

0,0(0 оценок)
Ответ:
pidortema
14.02.2021 10:28
1. Для цикла For есть решение выложенное выше  от Srzontmp.

2. Почти ничего не меня получим код для цикла while:
var
  i, n, k: integer;
begin
  i := 2;
  readln(n);
  while i <= n div 2 do begin
    if (n mod i) = 0 then k := i;
    i:=i+1;
    end;
  writeln('наибольший делитель ', n, ' = ', k);
end.

3. Аналогично для цикла Repeat:
var
  i, n, k: integer;
begin
  i := 2;
  readln(n);
  repeat
    if (n mod i) = 0 then k := i;
    i:=i+1;
  until i> n div 2;
  writeln('наибольший делитель ', n, ' = ', k);
end.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота