AceAlone
21.12.2022 15:11

Составить легкую программу! зеркально отразить последовательность в одномерном массиве. т.е. задаем последовательность, вводим границы "зеркала" - х и у. и зеркально отражаем. пример: 12345678910 х=5 у=8 вывод: 12348765910. буду блгодарна!

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
ez0lotareva
21.06.2020 12:44
var a: array [1..10] of integer;
    i, x, y, xi, yi, t: integer;
begin
     for i := 1 to 10 do
         readln(a[i]);
     writeln('X, Y');
     readln(X, Y);
          
     for i := 0 to abs(round(0.5*(x-y))) do
     begin
       t := a[x+i];
       a[x+i] := a[y-i];
       a[y-i] := t;
     end;
    
     for i := 1 to 10 do
         writeln('[', i, '] => ', a[i]);
end.
0,0(0 оценок)
Ответ:
kamila274
21.06.2020 12:44
Вот, пингвинчик :3 Можно было и короче, переменных поменьше и циклов... Но раз задача именно такая, то лучше не сокращать, а то могут оценку снизить)

var a: array [1..10] of integer;
    i, x, y, xi, yi, t: integer;
begin
     for i := 1 to 10 do
         readln(a[i]);
     writeln('X, Y');
     readln(X, Y);
          
     for i := 1 to 10 do
     begin
         if (a[i] = X) then xi := i;
         if (a[i] = Y) then yi := i;
     end;
     t := a[xi];
     a[xi] := a[yi];
     a[yi] := t;

     for i := 1 to 10 do
         writeln('[', i, '] => ', a[i]);
end.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота