В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История
nicky234
nicky234
10.11.2021 20:32 •  Информатика

Необходимо составить программу с использованием рекурсии замечание: под инвертированием понимают перестановку первого и последнего элементов этой части, второго и предпоследнего и т.д. инвертировать часть массива, расположенную между самым левым минимальным в первой половине массива и самым правым максимальным во второй половине массива.

Показать ответ
Ответ:
llggvvjvhh
llggvvjvhh
26.05.2020 08:23

Program Program1;
Var
a:array [1..10] of integer;
i,min,max, Nmin, Nmax:integer;

//Процедура рекурсивной инвресии массива
procedure InvertMas(nac,kon:integer);
var
temp:integer;
begin
temp:=a[nac];
a[nac]:=a[kon];
a[kon]:=temp;
if nac+1<kon-1 then InvertMas(nac+1,kon-1);
end;

begin
randomize;
//Заполняем массив случайнами числами и выводим его на экран
writeln('Массив до инверсии:');
for i:=1 to 10 do
begin
a[i]:=random(100);
writeln('a['+inttostr(i)+']='+inttostr(a[i]));
end;
//Находим самый левый минимальный элемент в первой половине массива и номер этого элемента
Nmin:=1;
min:=a[Nmin];
for i:=1 to 5 do
if min>a[i] then
begin
min:=a[i];
Nmin:=i;
end;
//Находим самый правый максимальный элемент во второй половине массива и номер этого элемента
Nmax:=10;
max:=a[Nmax];
for i:=10 downto 6 do
if max<a[i] then
begin
max:=a[i];
Nmax:=i;
end;

writeln;
writeln('Инвертируем часть массива с '+inttostr(Nmin)+' по '+inttostr(Nmax)+' элемент');
//Инвертируем часть массива с Nmin по Nmax
invertmas(Nmin,Nmax);

//Выводим массив после инверсии на экран
writeln;
writeln('Массив после инверсии:');
for i:=1 to 10 do writeln('a['+inttostr(i)+']='+inttostr(a[i]));

end.


Необходимо составить программу с использованием рекурсии замечание: под инвертированием понимают пер
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота