Составить легкую программу! Зеркально отразить последовательность в одномерном массиве. Т.е. Задаем последовательность, вводим границы "зеркала" - х и у. И зеркально отражаем.Пример:12345678910х=5 у=8 Вывод:12348765910.Очень бу...
Составить легкую программу!
Зеркально отразить последовательность в одномерном массиве. Т.е. Задаем последовательность, вводим границы "зеркала" - х и у. И зеркально отражаем.
Пример:12345678910
х=5 у=8 Вывод:12348765910.
Очень буду блгодарна!
Ответ(ы) на вопрос:
Вот, пингвинчик :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.
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.
Не нашли ответ?
Похожие вопросы