![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
|
Алгоритм решения
Допустим, требуется удалить элемент под номером К из массива А, состоящего из N элементов. Для этого необходимо сдвинуть влево на одну позицию все элементы, следующие за элементом под номером К.
Программная реализация
FOR i = K TO n-1
A(i) = A(i + 1)
NEXT i
n = n - 1

пример 11
Дан массив чисел. Удалить первый отрицательный элемент.
Тест
| Данные | Результат | |
| N=10 | A=(3, 5, -2, -4, 0, 7, 2, 8, 3, -2) | A=(3, 5, -4, 0, 7, 2, 8, 3, -2) |
Исполнение алгоритма
| Определение позиции первого отрицательного элемента | ||||
| i | Проверка условия | Первый отрицательный элемент | Номер первого отрицательного элемента К | |
| A(1)<0 (ложь) 3>0 | ||||
| A(2)<0 (ложь) 5>0 | ||||
| A(3)<0 (истина) -2<0 | A(3)=-2 | |||
| Удаление первого отрицательного элемента | ||||
| i | Cдвиг | Массив | n | |
| A(3)=A(4) | A=(3, 5, -4, -4, 0, 7, 2, 8, 3, -2) | |||
| A(4)=A(5) | A=(3, 5, -4, 0, 0, 7, 2, 8, 3, -2) | |||
| A(5)=A(6) | A=(3, 5, -4, 0, 7, 7, 2, 8, 3, -2) | |||
| A(6)=A(7) | A=(3, 5, -4, 0, 7, 2, 2, 8, 3, -2) | |||
| A(7)=A(8) | A=(3, 5, -4, 0, 7, 2, 8, 8, 3, -2) | |||
| A(8)=A(9) | A=(3, 5, -4, 0, 7, 2, 8, 3, 3, -2) | |||
| A(9)=A(10) | A=(3, 5, -4, 0, 7, 2, 8, 3, -2, -2) | n=n-1=10-1=9 | ||
| A=(3, 5, -4, 0, 7, 2, 8, 3, -2) | ||||
Дата публикования: 2014-11-29; Прочитано: 244 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!
