Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
практика_2012.rtf
Скачиваний:
9
Добавлен:
27.09.2019
Размер:
679.07 Кб
Скачать

Задание

Читая целые числа из текстового файла, создать линейный односвязный список

а) добавлением нового элемента в начало списка;

б) добавление нового элемента в конец списка.

Задание 1

Описать процедуру добавления одного или нескольких элементов в список.

1) Добавить новый элемент после элемента с заданным значением.

2) Добавить новый элемент перед элементом с заданным значением.

3) Добавить новый элемент после каждого элемента с заданным

значением.

4) Добавить новый элемент перед каждым элементом с заданным

значением.

5) Продублировать все нулевые элементы.

6) Продублировать первый нулевой элемент.

7) Продублировать все положительные элементы.

8) Продублировать первый положительный элемент.

9) Продублировать все отрицательные элементы.

10) Продублировать первый отрицательный элемент.

11) Продублировать все нечетные элементы.

12) Продублировать первый нечетный элемент.

13) Продублировать все четные элементы.

14) Продублировать первый четный элемент.

15) Продублировать все элементы с заданным значением.

16) Продублировать первый элемент с заданным значением.

17) Продублировать все элементы со значением, большим заданного.

18) Продублировать первый элемент со значением, большим заданного. 19) Продублировать все элементы со значением, меньшим заданного. 20) Продублировать первый элемент со значением, меньшим заданного. 21) Добавить в начало списка заданное количество элементов. 22) Добавить в конец списка заданное количество элементов. 23) Добавить перед последним элементом списка заданное количество элементов.

24) Добавить после первого элемента списка заданное количество элементов.

25) Добавить после первого элемента списка с заданным значением заданное количество элементов.

Задание 2

Описать процедуру удаления одного или нескольких элементов списка.

1) Удалить из списка все положительные элементы.

2) Удалить из списка первый положительный элемент.

3) Удалить из списка все отрицательные элементы.

4) Удалить из списка первый отрицательный элемент.

5) Удалить из списка все нулевые элементы.

6) Удалить из списка первый нулевой элемент.

7) Удалить из списка все нечетные элементы.

8) Удалить из списка первый нечетный элемент.

9) Удалить из списка все четные элементы.

10) Удалить из списка первый четный элемент.

11) Удалить из списка все элементы со значением большим заданного значения.

12) Удалить из списка первый из элементов со значением большим заданного значения.

13) Удалить из списка все элементы со значением меньшим заданного значения.

14) Удалить из списка первый из элементов со значением меньшим заданного значения.

15) Удалить из списка после каждого элемента с заданным значением один элемент.

16) Удалить из списка после первого элемента с заданным значением один элемент.

17) Удалить из списка после каждого элемента с заданным значением один элемент, если его значение отлично от заданного.

18) Удалить из списка после первого элемента с заданным значением один элемент, если его значение отлично от заданного.

19) Удалить из списка перед каждым элементом с заданным значением один элемент.

20) Удалить из списка перед первым элементом с заданным значением один элемент.

21) Удалить из списка перед каждым элементом с заданным значением один элемент, если его значение отлично от заданного.

22) Удалить из списка перед первым элементом с заданным значением один элемент, если его значение отлично от заданного.

23) Удалить заданное количество элементов в начале списка.

24) Удалить заданное количество элементов в конце списка.

25) Удалить заданное количество элементов перед последним элементом.

Задание 3

Описать рекурсивную процедуру или функцию обработки списка.

1) Выдать элементы списка.

2) Выдать элементы списка в обратном порядке.

3) Подсчитать количество положительных элементов списка.

4) Подсчитать количество отрицательных элементов списка.

5) Подсчитать количество нулевых элементов списка.

6) Подсчитать количество четных элементов списка.

7) Подсчитать количество нечетных элементов списка.

8) Подсчитать число вхождений заданного значения в список.

9) Подсчитать количество элементов со значением, большим заданно.

10) Подсчитать количество элементов со значением, меньшим заданно. 11) Определить сумму значений всех элементов списка. 12) Определить сумму значений всех положительных элементов списка. 13) Определить сумму значений всех отрицательных элементов списка. 14) Определить сумму значений всех четных элементов списка. 15) Определить сумму значений всех нечетных элементов списка. 16) Определить произведение значений всех элементов списка. 17) Определить произведение значений всех положительных элементов списка.

18) Определить произведение значений всех отрицательных элементов списка.

19) Определить среднее арифметическое значений элементов непустого списка.

20) Определить минимальный элемент непустого списка.

21) Определить максимальный элемент непустого списка.

22) Проверить, входит ли в список хотя бы один нулевой элемент.

23) Проверить, входит ли в список хотя бы один положительный элемент.

24) Проверить, входит ли в список хотя бы один отрицательный элемент.

Задание 4

Описать рекурсивную процедуру или функцию обработки списка.

1) Удалить из списка первый элемент с нулевым значением.

2) Удалить из списка первый элемент с положительным значением.

3) Удалить из списка первый элемент с отрицательным значением.

4) Удалить из списка первый элемент с четным значением.

5) Удалить из списка первый элемент с нечетным значением.

6) Удалить первый элемент с заданным значением.

7) Удалить из списка все нулевые элементы.

8) Удалить из списка все положительные элементы.

9) Удалить из списка все отрицательные элементы. 10) Удалить из списка все четные элементы. 11) Удалить из списка все нечетные элементы. 12) Удалить все элементы с заданным значением.

13) Удвоить в списке первое вхождение элемента с заданным значением.

14) Удвоить в списке первое вхождение нулевого элемента.

15) Удвоить в списке первое вхождение положительного элемента. 16) Удвоить в списке первое вхождение отрицательного элемента. 17) Удвоить в списке первое вхождение четного элемента. 18) Удвоить в списке первое вхождение нечетного элемента.

19) Удвоить в списке каждое вхождение элемента с заданным значением.

20) Удвоить в списке каждое вхождение нулевого элемента.

21) Удвоить в списке каждое вхождение положительного элемента.

22) Удвоить в списке каждое вхождение отрицательного элемента.

23) Удвоить в списке каждое вхождение четного элемента.

24) Удвоить в списке каждое вхождение нечетного элемента.

25) Вставить элемент с заданным значением после первого нулевого элемента.

НЕДЕЛЯ 2. ДВУСВЯЗНЫЕ ЛИНЕЙНЫЕ СПИСКИ

ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ