Лабораторная работа ╧8
Работа с массивами
1. Цель работы
Целью лабораторной работы является получение практических навыков в работе с массивами в языке C.
2. Темы для предварительной проработки
-
Операторы цикла языка C. Вложенные циклы.
-
Условный оператор языка C.
-
Массивы.
3. Задание
Объявить массив целых чисел и заполнить его случайными значениями. Размер массива и диапазон значений его элементов заданы в Вашем варианте индивидуального задания. В индивидуальных заданиях указано также, какую обработку массива следует произвести.
Для всех вариантов задания следует иметь в виду следующее:
-
0 считается положительным числом, если в задании не оговорен какой-то другой его статус;
-
когда речь идет о какой-то последовательности чисел, имеется в виду последовательность с длиной, большей 1;
-
в тех случаях, когда задание требует выполнения каких-то вычислений, разрешается выполнять их с той точностью, которую обеспечивают операции целочисленной арифметики.
4. Варианты индивидуальных заданий
╧ варианта |
Размерность массива |
Диапазон значений |
Что нужно сделать |
1 |
50 |
-100 - 100 |
Заменить все элементы с отрицательным значением на значение минимального не равного 0 положительного элемента |
╧ варианта |
Размерность массива |
Диапазон значений |
Что нужно сделать |
2 |
200 |
-50 - 50 |
Подсчитать количество пар соседних элементов с одинаковыми значениями |
╧ варианта |
Размерность массива |
Диапазон значений |
Что нужно сделать |
3 |
200 |
0 - 100 |
Подсчитать количество участков, которые образуют непрерывные последовательности чисел с неуменьшающимися значениями |
╧ варианта |
Размерность массива |
Диапазон значений |
Что нужно сделать |
4 |
200 |
-50 - 50 |
Подсчитать количество пар соседних элементов, которые имеют противоположные знаки |
╧ варианта |
Размерность массива |
Диапазон значений |
Что нужно сделать |
5 |
100 |
-100 - 100 |
Вывести начальные индексы всех непрерывных последовательностей неотрицательных чисел, длина которых больше 5 |
╧ варианта |
Размерность массива |
Диапазон значений |
Что нужно сделать |
6 |
100 |
-100 - 100 |
Найти ту непрерывную последовательность положительных чисел, сумма элементов в которой максимальная |
╧ варианта |
Размерность массива |
Диапазон значений |
Что нужно сделать |
7 |
100 |
-100 - 100 |
Разместить все элементы с положительными значениями в левой части массива, элементы с отрицательными значениями - в правой, а нули - между ними |
╧ варианта |
Размерность массива |
Диапазон значений |
Что нужно сделать |
8 |
100 |
-100 - 100 |
Заменить все элементы с отрицательными значениями средним арифметическим значением всех положительных элементов |
╧ варианта |
Размерность массива |
Диапазон значений |
Что нужно сделать |
9 |
200 |
0 - 100 |
Найти непрерывный участок из 10 элементов, сумма которых максимальна |
╧ варианта |
Размерность массива |
Диапазон значений |
Что нужно сделать |
10 |
200 |
0 - 100 |
Найти значение 3-го по величине элемента и значения всех элементов массива, которые его превышают, заменить на найденное значение |
╧ варианта |
Размерность массива |
Диапазон значений |
Что нужно сделать |
11 |
100 |
-50 - 50 |
Найти количество пар соседних элементов, которые имеют одинаковые абсолютные значения, но противоположные знаки |
╧ варианта |
Размерность массива |
Диапазон значений |
Что нужно сделать |
12 |
200 |
-100 - 100 |
Во всех последовательностях положительных чисел заменить значения элементов с максимальным и минимальным значением на среднее для этой последовательности |
╧ варианта |
Размерность массива |
Диапазон значений |
Что нужно сделать |
13 |
200 |
0 - 100 |
Найти непрерывный участок из 10 элементов, который имеет наибольшее среднее значение элементов |
╧ варианта |
Размерность массива |
Диапазон значений |
Что нужно сделать |
14 |
100 |
-50 - 50 |
Во всех последовательностях положительных чисел изменить порядок элементов на противоположный |
╧ варианта |
Размерность массива |
Диапазон значений |
Что нужно сделать |
15 |
200 |
-100 - 100 |
Во всех последовательностях положительных чисел ограничить снизу значения тех элементов, значения которых меньше среднего для этой последовательности |
╧ варианта |
Размерность массива |
Диапазон значений |
Что нужно сделать |
16 |
100 |
-50 - 50 |
Заменить все элементы с положительными значениями абсолютным значением отрицательного элемента с максимальным абсолютным значением |
╧ варианта |
Размерность массива |
Диапазон значений |
Что нужно сделать |
17 |
200 |
-50 - 50 |
Вывести начальные индексы всех непрерывных последовательностей чисел с неувеличивающимися значениями |
╧ варианта |
Размерность массива |
Диапазон значений |
Что нужно сделать |
18 |
100 |
-50 - 50 |
Вывести начальные индексы всех непрерывных знакопеременных последовательностей чисел |
╧ варианта |
Размерность массива |
Диапазон значений |
Что нужно сделать |
19 |
200 |
-50 - 50 |
Подсчитать количество всех, непрерывных последовательностей положительных чисел, длина которых больше 7 |
╧ варианта |
Размерность массива |
Диапазон значений |
Что нужно сделать |
20 |
200 |
-50 - 50 |
Найти из непрерывных последовательностей отрицательных чисел ту, которая имеет наибольшее абсолютное значение среднего арифметического ее элементов |
╧ варианта |
Размерность массива |
Диапазон значений |
Что нужно сделать |
21 |
100 |
-100 - 100 |
Разместить все элементы с нулевыми значениями в левой части массива, элементы с отрицательными значениями - за ними, а за ними - элементы с положительными значениями |
╧ варианта |
Размерность массива |
Диапазон значений |
Что нужно сделать |
22 |
100 |
-100 - 100 |
Ограничить значения всех элементов, абсолютные значения которых превышают среднее для положительных и отрицательных элементов |
╧ варианта |
Размерность массива |
Диапазон значений |
Что нужно сделать |
23 |
100 |
-100 - 100 |
Заменить каждый элемент на среднее арифметическое его и его соседей слева и справа. |
╧ варианта |
Размерность массива |
Диапазон значений |
Что нужно сделать |
24 |
200 |
-50 - 50 |
Найти непрерывные участки, на которых сумма элементов равна 0 |
╧ варианта |
Размерность массива |
Диапазон значений |
Что нужно сделать |
25 |
200 |
-50 - 50 |
Для каждого положительного элемента определить, есть ли в массиве отрицательный элемент с противоположным значением; если да, заменить эти элементы на 0 |