Top.Mail.Ru
Ответы

Программа на Pascal ABC

Удаление элементов равных номеру элемента в исходном списке, добавление после каждого элемента числа
его единиц, нахождение минимума из оставшихся элементов списка.

Дополнен

Готовый код.

По дате
По рейтингу
Аватар пользователя
Мудрец
6лет

КАРДИНАЛЬНОЕ ПРЕДЛОЖЕНИЕ.

Поскольку само понятие «номер элемента» является явно заданным в формулировке вопроса, то предлагаю объединить понятия «элемент списка» и «номер элемента» в одной ячейке. Также можно не связывать индекс массива с собственным номером элемента, но использовать как инструмент.

Пожалуйста, Nate Diaz, прошу Вас ответить, проходили ли Вы ключевое слово „Record” и понятие типа-записи?

Через запись можно записать обособление номера вместе с соответствующим элементом, например, так:

Type UNITinList = record
Number,Value:integer // поле Value для значения элемента, поле Number для его номера
end;
var VList:array[0..MaxInt] of UNITinList;
// пример: VList[i].Number:=i; VList[i].Value:=Random(MaxInt);

✓ Вариант без Record:

Type UNITSet = [Number,Value]; // определение пользовательских констант внутри типа. Каждая из констант имеет тип UNITSet
var VList:array [0..MaxInt,UNITSet] of integer;
// пример обращения к элементу списка: VList[i,Number]:=i; VList[i,Value]:=Random(MaxInt);

›⟩ ОБОСОБЛЕНИЕ номера элемента вместе со значением соответствующего элемента позволит сохранить присвоенный номер НЕЗАВИСИМО от вставок/удалений элементов!!!

Аватар пользователя
Оракул
6лет

приведи пример

Аватар пользователя
Просветленный
6лет

....

Аватар пользователя
6лет

500 рублей