Пример выполнения лабораторной работы
Вариант
1. Сформировать одномерный массив целых чисел, используя датчик случайных чисел.
2. Распечатать полученный массив.
3. Удалить все отрицательные элементы.
4. Добавить после каждого четного элемента массива элемент со значением 0.
Выполнение работы
Функция для формирования одномерного массива
void form_mas(int a[100],int n)
{
for(int i=0;i<n;i++)
a[i]=random(100)-50;
}
Функция для печати одномерного массива
void print_mas(int a[100],int n)
{
for(int i=0;i<n;i++)
cout<<a[i]<<" ";
}
Функция для удаления отрицательных элементов из массива
void del_mas(int a[100],int n)
{
for( int i=0;i<n;i++)
{
if(a[i]<0)
//сдвиг на 1 элемент влево
{
for (int j=i;j<n;j++)
a[j]=a[j+1];
n--;
i--;
}
}
}
Функция для добавления 0 после четных элементов
void add_mas(int a[100],int n)
{
for( int i=0;i<n;i++)
{
if(a[i]%2==0)//элемент четный
//сдвиг на 1 элемент вправо
{
for (int j=n;j<i;j--)
a[j]=a[j-1];
n++;i++;
}
}
}
Основная программа
void main()
{
int a[100],n;
cout<<"\nВведите количество элементов в массиве";
cin>>n;
form_mas(a,n);
print_mas(a,n);
del_mas(a,n);
print_mas(a,n);
add_mas(a,n);
print_mas(a,n);
}
Дополнительные задания
Одномерные массивы
Примечание. Размерности массивов задаются именованными константами.
Вариант 1.
В одномерном массиве, состоящем из n вещественных элементов, вычислить:
сумму отрицательных элементов массива;
произведение элементов массива, расположенных между максимальным и минимальным элементами.
Упорядочить элементы массива по возрастанию.
Вариант 2.
В одномерном массиве, состоящем из n вещественных элементов, вычислить:
сумму положительных элементов массива;
произведение элементов массива, расположенных между максимальным по модулю и минимальным но модулю элементами.
Упорядочить элементы массива по убыванию.
Вариант 3.
В одномерном массиве, состоящем из n целых элементов, вычислить:
произведение элементов массива с четными номерами;
сумму элементов массива, расположенных между первым и последним нулевыми элементами.
Преобразовать массив таким образом, чтобы сначала располагались все положительные элементы, а потом — все отрицательные (элементы, равные 0, считать положительными).
Вариант 4.
В одномерном массиве, состоящем из n вещественных элементов, вычислить:
сумму элементов массива с нечетными номерами;
сумму элементов массива, расположенных между первым и последним отрицательными элементами.
Сжать массив, удалив из него все элементы, модуль которых не превышает 1. Освободившиеся в конце массива элементы заполнить нулями.
Вариант 5.
В одномерном массиве, состоящем из n вещественных элементов, вычислить:
1) максимальный элемент массива;
2) сумму элементов массива, расположенных до последнего положительного элемента.
Сжать массив, удалив из него все элементы, модуль которых находится в интервале [а,b]. Освободившиеся в конце массива элементы заполнить нулями.
Вариант 6.
В одномерном массиве, состоящем из n вещественных элементов, вычислить:
минимальный элемент массива;
сумму элементов массива, расположенных между первым и последним положительными элементами.
Преобразовать массив таким образом, чтобы сначала располагаюсь все элементы, равные нулю, а потом — все остальные.
Вариант 7.
В одномерном массиве, состоящем из n целых элементов, вычислить:
номер максимального элемента массива;
произведение элементов массива, расположенных между первым и вторым нулевыми элементами.
Преобразовать массив таким образом, чтобы в первой его половине располагались элементы, стоявшие в нечетных позициях, а во второй половине — элементы, стоявшие в четных позициях.
Вариант 8.
В одномерном массиве, состоящем из n вещественных элементов, вычислить:
номер минимального элемента массива;
сумму элементов массива, расположенных между первым и вторым отрицательными элементами.
Преобразовать массив таким образом, чтобы сначала располагались все элементы, модуль которых не превышает 1, а потом — все остальные.
Вариант 9.
В одномерном массиве, состоящем из n вещественных элементов, вычислить:
максимальный по модулю элемент массива;
сумму элементов массива, расположенных между первым и вторым положительными элементами.
Преобразовать массив таким образом, чтобы элементы, равные нулю, располагались после всех остальных.
Вариант 10.
В одномерном массиве, состоящем из n целых элементов, вычислить:
минимальный по модулю элемент массива;
сумму модулей элементов массива, расположенных после первого элемента, равного нулю.
Преобразовать массив таким образом, чтобы в первой его половине располагались элементы, стоявшие в четных позициях, а во второй половине — элементы, стоявшие и нечетных позициях.
Вариант 11.
В одномерном массиве, состоящем из n вещественных элементов, вычислить:
номер минимального по модулю элемента массива;
сумму модулей элементов массива, расположенных после первого отрицательного элемента.
Сжать массив, удалив из него все элементы, величина которых находится в интервале [а,b]. Освободившиеся в конце массива элементы заполнить нулями.
Вариант 12.
В одномерном массиве, состоящем из n вещественных элементов, вычислить:
номер максимального по модулю элемента массива;
сумму элементов массива, расположенных после первого положительного элемента.
Преобразовать массив таким образом, чтобы сначала располагались все элементы, целая часть которых лежит в интервале [а,b], а потом — все остальные.
Вариант 13.
В одномерном массиве, состоящем из n вещественных элементов, вычислить:
количество элементов массива, лежащих в диапазоне от А до В;
сумму элементов массива, расположенных после максимального элемента.
Упорядочить элементы по убыванию модулей элементов.
Вариант 14.
В одномерном массиве, состоящем из n вещественных элементов, вычислить:
количество элементов массива, равных 0;
сумму элементов массива, расположенных после минимального элемента. Упорядочить элементы массива по возрастанию модулей элементов.
Вариант 15.
В одномерном массиве, состоящем из n вещественных элементов, вычислить:
количество элементов массива, больших С;
произведение элементов массива, расположенных после максимального по модулю элемента.
Преобразовать массив таким образом, чтобы сначала располагались все отрицательные элементы, а потом — все положительные (элементы, равные 0, считать положительными).
Вариант 16.
В одномерном массиве, состоящем из n вещественных элементов, вычислить:
1) количество отрицательных элементов массива;
2) сумму модулей элементов массива, расположенных после минимального по модулю элемента.
Заменить все отрицательные элементы массива их квадратами и упорядочить элементы массива по возрастанию.
Вариант 17.
В одномерном массиве, состоящем из n целых элементов, вычислить:
количество положительных элементов массива;
сумму элементов массива, расположенных после последнего элемента, равного нулю.
Преобразовать массив таким образом, чтобы сначала располагались все элементы, целая часть которых не превышает 1, а потом — все остальные.
Вариант 18.
В одномерном массиве, состоящем из n вещественных элементов, вычислить:
количество элементов массива, меньших С;
сумму целых частей элементов массива, расположенных после последнего отрицательного элемента.
Преобразовать массив таким образом, чтобы сначала располагались все элементы, отличающиеся от максимального не более чем на 20%, а потом — все остальные.
Вариант 19.
В одномерном массиве, состоящем из n вещественных элементов, вычислить:
произведение отрицательных элементов массива;
сумму положительных элементов массива, расположенных до максимального элемента.
Изменить порядок следования элементов в массиве на обратный.
Вариант 20.
В одномерном массиве, состоящем из n вещественных элементов, вычислить:
произведение положительных элементов массива;
сумму элементов массива, расположенных до минимального элемента.
Упорядочить по возрастанию отдельно элементы, стоящие на четных местах, и элементы, стоящие на нечетных местах.
Двумерные массивы
Вариант 1.
Дана целочисленная прямоугольная матрица. Определить:
количество строк, не содержащих ни одного нулевого элемента;
максимальное из чисел, встречающихся в заданной матрице более одного раза.
Вариант 2.
Дана целочисленная прямоугольная матрица. Определить количество столбцов, не содержащих ни одного нулевого элемента.
Характеристикой строки целочисленной матрицы назовем сумму ее положительных четных элементов. Переставляя строки заданной матрицы, расположить их в соответствии с ростом характеристик.
Вариант 3.
Дана целочисленная прямоугольная матрица. Определить:
количество столбцов, содержащих хотя бы один нулевой элемент;
номер строки, в которой находится самая длинная серия одинаковых элементов.
Вариант 4.
Дана целочисленная квадратная матрица. Определить:
произведение элементов в тех строках, которые не содержат отрицательных элементов;
максимум среди сумм элементов диагоналей, параллельных главной диагонали матрицы.
Вариант 5.
Дана целочисленная квадратная матрица. Определить:
сумму элементов в тех столбцах, которые не содержат отрицательных элементов;
минимум среди сумм модулей элементов диагоналей, параллельных побочной диагонали матрицы.
Вариант 6.
Дана целочисленная прямоугольная матрица. Определить:
сумму элементов в тех строках, которые содержат хотя бы один отрицательный элемент;
номера строк и столбцов всех седловых точек матрицы.
ПРИМЕЧАНИЕ -
Матрица А имеет седловую точку Аij, если Aij является минимальным элементом i строке и максимальным в j-м столбце.
Вариант 7.
Для заданной матрицы размером 8 на 8 найти такие k, что k-я строка матрицы совпадает с k-м столбцом.
Найти сумму элементов в тех строках, которые содержат хотя бы один отрицательный элемент.
Вариант 8.
Характеристикой столбца целочисленной матрицы назовем сумму модулей его отрицательных нечетных элементов. Переставляя столбцы заданной матрицы, расположить их в соответствии с ростом характеристик.
Найти сумму элементов в тех столбцах, которые содержат хотя бы один отрицательный элемент.
Вариант 9.
Соседями элемента Аij в матрице назовем элементы Akl c i-1≤k≤i+1, j-1≤l≤j+1, (k,l)¹(i,j). Операция сглаживания матрицы дает новую матрицу того же размера, каждый элемент которой получается как среднее арифметическое имеющихся соседей соответствующего элемента исходной матрицы. Построить результат сглаживания заданной вещественной матрицы размером 10 на 10. В сглаженной матрице найти сумму модулей элементов, расположенных ниже главной диагонали.
Вариант 10.
Элемент матрицы называется локальным минимумом, если он строго меньше всех имеющихся у него соседей. Подсчитать количество локальных минимумов заданной матрицы размером 10 на 10. Найти сумму модулей элементов, расположенных выше главной диагонали.
Вариант 11.
Коэффициенты системы линейных уравнений заданы в виде прямоугольной матрицы. С помощью допустимых преобразований привести систему к треугольному виду.
Найти количество строк, среднее арифметическое элементов которых меньше заданной величины.
Вариант 12.
Уплотнить заданную матрицу, удаляя из нее строки и столбцы, заполненные нулями. Найти номер первой из строк, содержащих хотя бы один положительный элемент.
Вариант 13.
Осуществить циклический сдвиг элементов прямоугольной матрицы на n элементов вправо или вниз (в зависимости от введенного режима), n может быть больше количества элементов в строке или столбце.
Вариант 14.
Осуществить циклический сдвиг элементов квадратной матрицы размерности MxN вправо на k элементов таким образом: элементы 1-й строки сдвигаются в последний столбец сверху вниз, из него — в последнюю строку справа налево, из нее — в первый столбец снизу вверх, из него — в первую строку; для остальных элементов — аналогично.
Вариант 15.
Дана целочисленная прямоугольная матрица. Определить номер первого из столбцов, содержащих хотя бы один нулевой элемент.
Характеристикой строки целочисленной матрицы назовем сумму ее отрицательных четных элементов. Переставляя строки заданной матрицы, расположить их в соответствии с убыванием характеристик.
Вариант 16.
Упорядочить строки целочисленной прямоугольной матрицы по возрастанию количества одинаковых элементов в каждой строке.
Найти номер первого из столбцов, не содержащих ни одного отрицательного элемента.
Вариант 17.
Путем перестановки элементов квадратной вещественной матрицы добиться того, чтобы ее максимальный элемент находился в левом верхнем углу, следующий по величине — в позиции (2,2), следующий по величине — в позиции (3,3) и т. д., заполнив таким образом всю главную диагональ.
Найти номер первой из строк, не содержащих ни одного положительного элемента.
Вариант 18.
Дана целочисленная прямоугольная матрица. Определить:
количество строк, содержащих хотя бы один нулевой элемент;
номер столбца, в которой находится самая длинная серия одинаковых элементов.
Вариант 19.
Дана целочисленная квадратная матрица. Определить:
сумму элементов в тех строках, которые не содержат отрицательных элементов;
минимум среди сумм элементов диагоналей, параллельных главной диагонали матрицы.
Вариант 20.
Дана целочисленная прямоугольная матрица. Определить:
количество отрицательных элементов в тех строках, которые содержат хотя
бы один нулевой элемент;
номера строк и столбцов всех седловых точек матрицы.
ПРИМЕЧАНИЕ -
Матрица А имеет седловую точку Аij, если Aij является минимальным элементом i строке и максимальным в j-м столбце.