Название: методические указания к выполнению лабораторных работ по программированию для студентов направления 5528 «Информатика и вычислительная техника» и 5205 «Лингвистика»(Власенко О. Ф.,Беляева И. В. )

Жанр: Информационные системы и технологии

Просмотров: 4956


Задачи для изучающих программирование самостоятельно

Этот  раздел  предназначен  для  тех,  кто  самостоятельно  изучает  программирование  или готовится к сдаче экзамена. В разделе собраны задачи от простейших   до весьма сложных, причем выстроены они по темам, а внутри тем от простых к сложным. Желательно решать эти задачи последовательно и пропускать их только в том случае, если решение для Вас очевидно. Если Вам удалось решить все задачи, то можете поставить себе "отлично" и смело переходить к изучению следующей темы программирования – обработке двумерных массивов…Общее задание:Во всех задачах требуется написать, отладить и протестировать программу, обеспечивающую выполнение следующих действий:1. Ввод с клавиатуры одномерного массива A[N] целых чисел, 1<=N<=20.2. Вывод исходного, т.е. только что введенного, массива.3. Обработка массива в соответствии с заданием.4. Вывод параметров массива, которые требуется найти по заданию.Например, взадаче требуется найти и удалить максимальный элемент массива. В этом случае перед удалением требуется вывести значение и индекс найденного максимального элемента.5. Вывод массива после внесенных изменений.Замечания:1. При обработке вспомогательными массивами по возможности не пользоваться.2. Если по заданию требуется использовать больше одного массива, то каждый из массивов - это массив целых чисел. Первый массив называется А, второй массив называется B, третий массив называется C. Все они могут содержать от 1 до 20 элементов.Задачи на сканирование всего массива1. Подсчитать количество  нечетных элементов  массива.Пример: массив          7 2 6 5 4 4 10 3 9нечетные  элементы        7          5          3 9их   количество    42. Подсчитать  сумму   четных элементов  массива.Пример: массив      7 2 6 5 4 4 10 3 9четные  элементы 2 6       4 4 10их   сумма        263. Элементы массива, кратные  числу  3, обнулить.Пример: массив    7 2 6 5 4 4 10 3 9элементы кратные  3        6          3 9массив после  обработки    7 2 0 5 4 4 10 0 04. Элементы массива, стоящие  между   четными, обнулить.Пример: массив    7 2 6 5 4 4 10 3 9четные  элементы 2 6       4 4 10элементы  между   четными  5            4массив после  обработки    7 2 6 0 4 0 10 3 9

Поиск элементов в массиве5. Найти   первый четный элемент  массива.Пример: массив     7 2 6 5 4 4 10 3 9четные  элементы   2 6       4 4 10первый из  четных      26. Найти   последний  элемент  массива, кратный числу  5.Пример: массив      7 2 6 5 4 4 10 3 9элементы кратные  5        5          10последний из  них            107. Найти   первый  и  последний  элементы массива, кратные числу  3.Пример: массив                         7 2 6 5 4 4 10 3 9 элементы кратные  3            6         3 9 первый  и  последний из  них               6           98. Найти             последний  элемент массива,         правее которого  расположен четный элемент.Пример: массив 7 2 6 5 4 4 10 3 9 четные  элементы                  2 6                   4 4 10 элементы левее  четных        7 2       5 4 4 последний из  них                                                    49. Найти   максимальный из  четных элементов  массива.Пример: массив      7 2 6 5 4 4 10 3 9четные  элементы 2 6       4 4 10максимальный из  четных            1010. Найти   максимальный из  элементов, имеющих  четный индекс.Пример: массив       7 2 6 5 4 4 10 3 9 элементы с  четными индексами                 2          5          4          3 максимальный из  них                              511. Найти   наименьший из  элементов, расположенных правее  максимального элемента  массива.Пример: массив      7 2 6 5 4 4 10 3 9 максимальный элемент               10 наименьший правее  максимального                      3Поиск цепочек в массиве12. Найти   и  вывести все  цепочки нечетных элементов массива.Замечание: цепочкой  элементов  будем считать

идущие   друг за  другом слева  направо элементы массива, удовлетворяющие определенному  условию.Будем считать  цепочкой длиной в  один отдельно стоящий элемент, удовлетворяющий условию. Пример: массив                     7 2 6 5 4 4 10 3 9 нечетные  элементы                    7          5          3 9 все  цепочки            №1  - 7№2 - 5№3 - 3 913. Найти   и  вывести  самую   длинную цепочку  четных элементов массива.Пример: массив      7 2 6 5 4 4 10 3 9 четные  элементы                        2 6       4 4 10 самая  длинная цепочка                                  4 4 10ее  длина          =3Удаление одиночных элементов14. Удалить последний  четный элемент  массива.Пример: массив            7 2 6 5 4 4 10 3 9четные  элементы 2 6       4 4 10последний из  четных      10массив после  удаления    7 2 6 5 4 4 3 915. Удалить  первый  четный           элемент             массива,имеющий    нечетный  индекс.Пример: массив 7 2 6 5 4 4 10 3 9четные  элементы 2 6       4 4 10с  нечетными индексами  6          4          10первый из  них      6массив после  удаления      7 2 5 4 4 10 3 916. Удалить  минимальный из  элементов, кратных числу  3.Пример: массив       7 2 6 5 4 4 10 3 9 элементы кратные  3                  6          3 9 минимальный из  них                            3 массив после  удаления     7 2 6 5 4 4 10 917. Удалить наибольший из  нечетных элементов, расположенных левее  минимального из  кратных числу  3.Пример: массив      7 2 6 5 4 4 10 3 9элементы кратные  3        6          3 9минимальный из  них             3нечетные левее  его            7          5

наибольший из  них             7массив после  удаления      2 6 5 4 4 10 3 9Удаление элементов массива по признаку18. Удалить все  четные элементы массива.Пример: массив  7 2 6 5 4 4 10 3 9четные  элементы 2 6            4 4 10массив после  удаления          7 5 3 919. Удалить  все   четные   элементы   массива, имеющие нечетный  индекс.Пример: массив 7 2 6 5 4 4 10 3 9 четные  элементы                        2 6       4 4 10 имеющие  нечетный индекс                              6          4          10 массив после  удаления     7 2 5 4 3 920. Удалить все  простые элементы массива.Пример: массив         7 2 6 5 4 4 10 3 9простые  элементы           7 2       5            3массив после  удаления      6 4 4 10 921. Удалить все  нечетные элементы массива,расположенные            левее  максимального.Пример: массив      7 2 6 5 4 4 10 3 9максимальный элемент    10нечетные левее  его       7          5массив после  удаления      2 6 4 4 10 3 9Удаление цепочек элементов массива22. Удалить  самую   длинную цепочку  четных  элементов.Пример: массив            7 2 6 5 4 4 10 3 9четные  элементы 2 6            4 4 10цепочки            №1  - 2 6         - длина  цепочки  2№2 - 4 4 10 - длина  цепочки  3самая  длинная  цепочка  (номер 2)    4 4 10массив после  удаления          7 2 6 5 3 923. Удалить  элементы  массива, расположенные  между первым  и  вторым  нечетными  элементами.Пример: массив                              7 2 6 5 4 4 10 3 9 нечетные  элементы                        7    5       3 9 первый  и  второй из  них                 7    5элементы  между   ними             2 6массив после  удаления   7 5 4 4 10 3 9

Вставка элементов в массив24. После первого  элемента, кратного  числу 5,вставить элемент, равный 0.Пример: массив      7 2 6 5 4 4 10 3 9элементы кратные  5        5          10первый из  них      5массив после вставки           7 2 6 5 0 4 4 10 3 925. После каждого четного элемента массива вставить два элемента с тем   же  значением.Пример: массив       7 2 6 5 4 4 10 3 9 четные  элементы                        2 6       4 4 10 массив после вставки7 2 2 2 6 6 6 5 4 4 4 4 4 4 10 10 10 3 9Создание дополнительного массива26. Создать  массив В  из  нечетных элементов массива А.Массив  А  не   изменять. (Другая  формулировка этойже  задачи: Скопировать  нечетные  элементы измассива А  в В).Пример: массив  А        7 2 6 5 4 4 10 3 9нечетные  элементы        7          5          3 9массив  В  7 5 3 9массив  А  (после  копирования) 7 2 6 5 4 4 10 3 927. Создать  массив В  из  четных элементов массива А.Из  массива А  четные  элементы удалить.(Другая  формулировка  - Перенести  четныеэлементы из  массива А  в В).Пример: массив  А           7 2 6 5 4 4 10 3 9четные  элементы   2 6       4 4 10массив  В         2 6 4 4 10массив  А  (после  переноса)       7 5 3 928. В  массив  В  записать  все  элементы массива А, встречающиеся  больше одного  раза. В  массиве А оставить  только по   одному из  таких  элементов. Пример: массив  А     7 3 6 5 4 3 10 3 4 элементы встречающиесябольше одного раза            3 и  4массив  В          3 4массив  А  7 3 6 5 4 10Перестановка элементов массива

29. Переставить  первый и  последний  четные  элементы массива.Пример: массив  7 2 6 5 4 4 10 3 9 четные  элементы                    2 6       4 4 10 первый  и  последний                       2                      10 массив после  перестановки             7 10 6 5 4 4 2 3 930. Переставить  элементы массива, расположенные между первым  и  последним четными элементами массивав  обратном порядке.Пример: массив          7 2 6 5 4 4 10 3 9четные  элементы        2 6       4 4 10первый  и  последний            2          10массив после  перестановки        7 2 4 4 5 6 10 3 9Перестановка цепочек31. Переставить  местами цепочки элементов  массива, расположенные  до   первого четного  и  после последнего  четного  элементов массива.Пример: массив 7 2 6 5 4 4 10 3 9 четные  элементы                    2 6       4 4 10 первый  и  последний                       2                      10 цепочка до   первого из них             7цепочка после  последнего            3 9массив после  перестановки       3 9 2 6 5 4 4 10 732. Найти   максимальный  и  минимальный элементы массива. Цепочку элементов, расположенных  левее обоих из  них, удалить. Цепочки, расположенные между   ними  и  правее  обоих из  них, переставить местами.Пример: массив     7 2 6 5 4 4 10 3 9минимальный        2максимальный         10цепочка левее  обоих            7цепочка между   ними        6 5 4 4цепочка правее  обоих          3 9массив после  обработки 2 3 9 10 6 5 4 4Подсчет количества встреч элементов33. Посчитать, сколько  разных элементов храниться в массиве.Пример: массив                        7 2 6 5 4 4 10 3 9 разные  элементы                      7 2 6 5 4  10 3 9 всего их                                  8

34. Посчитать, сколько  раз встречается каждый   из элементов массива.Замечание: Можно использовать дополнительный массив  для  хранения  уникальных элементов. Пример: массив     7 2 6 5 4 4 10 3 9 встречаются 7-1  2-1  6-1  5-1  4-2 10-1   3-1  9-1Обработка двух массивов35. Вводятся  массивы А  и  В. В  массив  А  добавить первый четный элемент  массива  В.Пример: массив  А 7 3 7 5 4 3 массив  В 1  3 4 2 3 6 1 четные  элементы массива  В                   4 2       6 первый из  них                   4массив  А  после  обработки            7 3 7 5 4 3 4массив  В  после  обработки    1  3 4 2 3 6 136. Вводятся  массивы А  и  В. В  начало массива А переписать  нечетные элементы массива  В, расположенные левее  максимального элемента. Пример: массив  А                7 3 7 5 4 3 массив  В 1  3 4 2 3 6 1 максимальный элемент  В                                         6 нечетные  элементы В       1  3      3                      1 левее  максимального        1  3      3массив  А  после  обработки      1  3 3 7 3 7 5 4 3массив  В  после  обработки         4 2 6 137. Вводятся   массивы А  и  В. Из  массива А  удалить все элементы,  правее  которых расположены четные элементы.  В  конец массива  В  добавить   минимальныйи  максимальный из  удаленных элементов. Пример: массив  А     7 1  6 6 7 4 3 массив  В       1  3 4 2четные  элементы А                         6 6                   4 элементы  А  левее  четных                      1  6      7 массив  А  после  удаления           7 6 4 3 минимальный  из  удаленных                     1максимальный из  удаленных       7массив  В  после  добавления        1  3 4 2 1  7Обработка трех массивов38. Вводятся  массивы А  и  В. В  массив  С  переписать все элементы массива  А, которые встречаются  в  массиве

В  не   меньше   чем   2 раза.

Пример: массив

А

7

3 7 5 4 3

массив  В

 

1

3 4 2 3 6 4 1  3

массив  С

 

3

4

39. Вводятся  массивы А, В  и  С. Из  массива А  удалить элементы,  совпадающие  по   значению  с теми из элементов массива В, которых нет  в  массиве С. Пример: массив  А   7 3 7 5 4 9массив  В  1  3 4 2 3 6 4 1  3 5массив  С     3 1  8 9из  массива А  не   удаляются:7 - нет в В3 - есть  в В, но   есть и  в С9 - нет в Виз  массива А  удаляются:5 - есть  в В  и  нет в С4 - есть  в В  и  нет в Смассив  А  после  обработки    7 3 7 940. Вводятся  массивы А  и  В. Из  массива А  удалить все элементы,  которые встречаются     в  В  ровно  2 раза. Из  В  переписать в С  те элементы,  которые совпадают с  оставшимися в  массиве А.Пример: массив  А         7 3 7 5 4 3массив  В  1  3 4 2 3 1  4 7 3в массиве В  2 раза  встречаются 1         4массив  А  после  удаления        7 3 7 5 3элементы  В  совпадающие с  А    3          3          7 3массив  С  3 3 7 3массив  В        1  4 2 6 4Добавление элементов в уже отсортированный массив41. Вводиться  массив  А. При  добавлении  каждый   новый элемент вставляется  в массив таким образом,  чтобы весь  массив был  упорядочен  по   возрастанию.Пример: исходное состояние           массив А  - пустой ввод 3    массив  А       3ввод 5            массив  А       3 5 ввод  2      массив  А       2 3 5 ввод 7    массив  А       2 3 5 7ввод 4  массив  А       2 3 4 5 7