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

Напишите программу, которая переставляет элементы массива в обратном порядке без использования дополнительного массива. программа должна считать массив, поменять порядок его элементов, затем вывести результат (просто вывести элементы массива в обратном порядке – недостаточно! )

Показать ответ
Ответ:
ed77714
ed77714
04.10.2020 17:19
Подумайте чуть, ведь все просто. Есть массив, у него гдето есть середина, или точка симметрии. Она находится как (n div 2). Если массив четной длины, то он делится на 2 равные части, если нечетный - в середине остается один элемент, который ни с кем менять не надо.
Сейчас смотрим элементы первой половины
for i:=1 to n div 2
запоминаем их x:=a[i];
присваиваем им значения симметричных им элементов с конца
a[i]:=a[n-i+1]; например при n=10 a[1]:=a[10-1+1];
А элементам в конце присваиваем значения запомненных первых элементов
a[n-i+1]:=x;
Все, поменяли.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота