Задать вопрос
1 июня, 20:08

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

+4
Ответы (1)
  1. 2 июня, 00:03
    0
    Подумайте чуть, ведь все просто. Есть массив, у него гдето есть середина, или точка симметрии. Она находится как (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;

    Все, поменяли.
Знаете ответ на вопрос?
Не уверены в ответе?
Правильный ответ на вопрос 👍 «Напишите программу, которая переставляет элементы массива в обратном порядке без использования дополнительного массива. Программа должна ...» по предмету 📗 Информатика. Развернутая система поиска нашего сайта обязательно приведёт вас к нужной информации. Как вариант - оцените ответы на похожие вопросы. Но если вдруг и это не помогло - задавайте свой вопрос знающим оппонентам, которые быстро дадут на него ответ!
Искать готовые ответы