
- •Часть 2. Основы программирования
- •Часть 2. Основы программирования
- •Содержание
- •Предисловие
- •Лабораторная работа 21 Подставляемые (встраиваемые) функции. Перегрузка функций
- •Лабораторная работа 22 Производные типы. Тип указатель: указатели на объекты
- •Лабораторная работа 23 Тип указатель: указатели на функции
- •Лабораторная работа 24 Решение задач с использованием указателей
- •Лабораторная работа 25 Символьные данные и строки
- •Лабораторная работа 26 Функции для работы со строками
- •Лабораторная работа 27 Решение задач на строки
- •Лабораторная работа 28 Массивы: одномерные массивы
- •Лабораторная работа 29 Одномерные массивы: задачи поиска, замены и перестановок элементов массива
- •Лабораторная работа 30 Одномерные массивы: задачи сортировок элементов массива
- •Лабораторная работа 31 Двумерные массивы. Задачи поиска, замены и суммирования элементов двумерного массива
- •Лабораторная работа 32 Двумерные массивы. Задачи сортировок и перестановок в двумерных массивах
- •Индивидуальные задания Требования к оформлению индивидуальных заданий
- •Задание 1. Указатели
- •Задание 2. Перегрузка функций
- •Задание 3. Строки
- •Задание 4. Одномерный массив: преобразование массива
- •Задание 5. Одномерный массив: сортировка массива
- •Задание 6. Двумерный массив
- •Литература
- •Часть 2. Основы программирования
Задание 5. Одномерный массив: сортировка массива
Решите задачи данной группы, оформив решение в виде функций генерации, вывода и обработки массивов. Предусмотрите в функции генерации массива ввод границ диапазона случайных чисел.
Отсортируйте в массиве нечетные элементы по убыванию.
Организуйте массив, содержащий 20 различных случайных целых чисел. После этого элементы массива упорядочиваются по убыванию, и содержимое отсортированного массива выводится на экран.
Сортировка подсчетом. Выходной массив заполняется значениями –1. Затем для каждого элемента определяется его место в выходном массиве путем подсчета количества элементов, строго меньших данного. Естественно, что все одинаковые элементы попадают на одну позицию, за которой следует ряд значений –1. После этого оставшиеся в выходном массиве позиции со значением –1 заполняются копией предыдущего значения.
Организуйте массив, содержащий 15 различных целых чисел. После этого отдельно первые 5 элементов, вторые 5 элементов и последние 5 элементов сортируются по возрастанию. Содержимое отсортированного таким образом массива выводится на экран.
«Хитрая» сортировка. Из массива путем однократного просмотра выбирается последовательность элементов, расположенных в порядке возрастания, переносится в выходной массив и заменяется во входном значением -1. Затем оставшиеся элементы включаются в полученную упорядоченную последовательность методом «погружения», когда очередной элемент путем ряда обменов «погружается» до требуемой позиции в уже упорядоченную часть массива.
Дано линейное множество A из N точек. Найти такую точку из данного множества, сумма расстояний от которой до остальных его точек максимальна, и саму эту сумму.
Дано линейное множество A из N точек. Найти пару различных точек этого множества с максимальным расстоянием между ними и само это расстояние (точки выводятся в том же порядке, в котором они перечислены при задании множества A).
Организуйте массив, содержащий 2n целых чисел. Отсортируйте элементы с нечётными индексами по возрастанию.
Дан массив размера N. Вывести индексы массива в том порядке, в котором соответствующие им элементы образуют возрастающую последовательность.
Отсортируйте в массиве четные элементы по возрастанию.
Создайте целочисленный массив, содержащий 2n различных чисел. Отсортируйте первую половину массива по возрастанию, а вторую по убыванию. Выведите на экран, отсортированный таким образом массива.
Отсортируйте в массиве положительные элементы по возрастанию, отрицательные – по убыванию.
Массивы А и В заполнены случайными различными числами, причем в В в 2 раза меньше элементов, чем в А. Определите входят ли все элементы В в А.
Дан массив размера N. Вывести индексы массива в том порядке, в котором соответствующие им элементы образуют убывающую последовательность.
На координатной прямой дана точка A и множество B из N точек. Найти номер точки из множества B, наиболее близкой от точки A.
Организуйте массив, содержащий 2n целых чисел. Отсортируйте элементы с нечётными индексами по убыванию.
Дано линейное множество A из N точек. Найти такую точку из данного множества, сумма расстояний от которой до остальных его точек минимальна, и саму эту сумму.
Дана точка A и множество B из N точек. Найти номер точки из множества B, наиболее удаленной от точки A.
Дано линейное множество A из N точек. Найти пару различных точек этого множества с минимальным расстоянием между ними и само это расстояние (точки выводятся в том же порядке, в котором они перечислены при задании множества A).
Даны множества A и B, состоящие соответственно из N1 и N2 точек. Найти максимальное расстояние между точками этих множеств и сами точки, расположенные на этом расстоянии.
В массиве 2n + 1 различных элементов. Найдите средний элемент массива. Под средним элементом понимают такой, для которого в массиве n элементов больше его и n элементов меньше.
Даны линейные множества A и B, состоящие соответственно из N1 и N2 точек. Найти минимальное расстояние между точками этих множеств и сами точки, расположенные на этом расстоянии.
В массиве 3n элементов. Отсортируйте первые n элементов массива по убыванию, последние n элементов по возрастанию.
Даны два массива А и В. Сформируйте из них массив С, в котором элементы отсортированы по убыванию.
Дан целочисленный массив А. Отсортируйте по возрастанию те его элементы, которые входят во введенный отрезок [a, b].
Дано линейное множество A из N точек. Найти такую точку из данного множества, которая наиболее близка к значению среднего арифметического элементов массива.
Дан массив А, состоящий из 2N элементов. Разбейте его на массивы В и С по N элементов каждый так, чтобы каждый элемент В не превосходил каждого элемента С.
Дан массив А, состоящий из N целых чисел. Сформируйте массив В, состоящий из убывающей последовательности различных элементов массива А.