Const n = 5; var i: integer; a: array[1..n * 2 + 1] of integer; begin writeln('исходный массив: '); for i : = 1 to 2 * n do begin a[i] : = random(99) + 1; write(a[i] : 5); end; for i : = 2 * n + 1 downto n + 1 do a[i] : = a[i - 1]; a[n + 1] : = 0; writeln(); writeln('полученный массив: '); for i : = 1 to 2 * n + 1 do write(a[i] : 5); end.
Нарисуем схему. В подобного рода заданиях, где робот должен вернуться в начальную точку начинаем с конца.
1) Рисуем начальную точку.
2) Т.к. последнее условие "пока не слева стена", то рисуем стену слева от начальной точки
3) Далее переходим к началу и выполняем движение в указанном направлении ("вправо"), а затем поочерёдно выполняем то же самое с "пока не..." и функциями движения
4) По схеме находим нужную точку начиная с начальной точки
(Нарисованная мной схема приложена внизу, а так же решение отмечено на рисунке)
C5
Объяснение:
Нарисуем схему. В подобного рода заданиях, где робот должен вернуться в начальную точку начинаем с конца.
1) Рисуем начальную точку.
2) Т.к. последнее условие "пока не слева стена", то рисуем стену слева от начальной точки
3) Далее переходим к началу и выполняем движение в указанном направлении ("вправо"), а затем поочерёдно выполняем то же самое с "пока не..." и функциями движения
4) По схеме находим нужную точку начиная с начальной точки
(Нарисованная мной схема приложена внизу, а так же решение отмечено на рисунке)