
Вопрос задан 18.07.2023 в 03:44.
Предмет Информатика.
Спрашивает Зубенко Данил.
Нужно написать программу на Паскале, которая удаляет n-ный элемент массива (не обнуляет его, а
удаляет, чтобы длина массива изменилась), не через write, а через удаление или перепись массива без этого элемента в другой массив (напишите как переписать один массив в другой убрав элемент). Заранее спасибо.

Ответы на вопрос

Отвечает Ситников Миша.
Pascal 3.5.1:
Begin
var v:=ReadInteger('Введите количество элементов в массиве:');
var n:=ReadInteger('Введите какой элемент необходимо удалить:');
var arr:=ArrRandomInteger(v,1,100);
arr.Println;
for var i:=n to arr.Length-1 do
arr[i-1]:=arr[i];
SetLength(arr,arr.Length-1);
arr.Println;
end.



Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.
Конечно, я могу помочь вам написать программу на Паскале, которая удалит n-ный элемент массива и перепишет массив без этого элемента в другой массив. Вот пример такой программы:
pascalprogram УдалениеЭлементаМассива; const MAX_SIZE = 100; // Максимальный размер массива type TArray = array[1..MAX_SIZE] of Integer; // Тип массива procedure УдалитьЭлемент(var arr: TArray; var size: Integer; index: Integer); var i: Integer; begin // Проверяем корректность индекса if (index < 1) or (index > size) then begin writeln('Ошибка: некорректный индекс'); Exit; end; // Переписываем элементы массива без удаленного элемента for i := index to size - 1 do arr[i] := arr[i + 1]; // Уменьшаем размер массива Dec(size); end; procedure ВывестиМассив(const arr: TArray; size: Integer); var i: Integer; begin for i := 1 to size do write(arr[i], ' '); writeln; end; var массив: TArray; размерМассива, индекс: Integer; begin // Ввод размера массива writeln('Введите размер массива (не более ', MAX_SIZE, '): '); readln(размерМассива); // Ввод элементов массива writeln('Введите элементы массива: '); for индекс := 1 to размерМассива do readln(массив[индекс]); // Вывод исходного массива writeln('Исходный массив:'); ВывестиМассив(массив, размерМассива); // Ввод индекса элемента для удаления writeln('Введите индекс элемента, который нужно удалить: '); readln(индекс); // Удаление элемента из массива УдалитьЭлемент(массив, размерМассива, индекс); // Вывод измененного массива writeln('Измененный массив:'); ВывестиМассив(массив, размерМассива); readln; end.
Программа позволяет ввести размер массива и его элементы, затем указать индекс элемента, который нужно удалить. После удаления элемента программа выводит измененный массив.


Похожие вопросы
Топ вопросов за вчера в категории Информатика

Информатика 563

Информатика 404

Информатика 31

Информатика 76

Информатика 16

Информатика 41

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