Задача «Формирование и изменение массива»

Разработать программу для обработки трёх прямоугольных целочисленных матриц разного размера, для каждой из которых надо сформировать одномерный массив из элементов матрицы, удовлетворяющих заданному условию и расположенных в определённой части матрицы (вариант № + 1). В случае нечётного количества строк и/или столбцов одной или нескольких матриц выводить соответствующие сообщения и обрабатывать меньшую часть матрицы (матриц). Для каждой матрицы использовать своё заданное значение. Для обработки матриц использовать процедуру – одну (!) для всех матриц. Результатом этой процедуры должен быть одномерный массив, а также количество элементов этого массива.

Затем из некоторых из полученных одномерных массивов удалить элементы, удовлетворяющие заданному условию. Для удаления элементов из массива также использовать процедуру. При удалении элементы, расположенные после удаляемого, следует сдвигать к началу массива. Удаление производить дважды, по одному значению. Для поиска значения, используемого при удалении элементов из массива, использовать функцию, вызов которой должен быть фактическим параметром процедуры удаления элементов. Если какой-то из массивов пуст, удаления не проводить.

Для ввода матриц и вывода массивов также использовать процедуры. Ввод всех данных осуществляется из файла, вывод – в файл. Для передачи имён файлов должны использоваться параметры программы.

Описание

  1. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы из чётных элементов верхней половины матрицы a, нижней половины матрицы b, левой половины матрицы c. Из первого полученного одномерного массива удалить элементы, равные минимальному элементу второго массива и равные минимальному элементу третьего массива.
  2. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, меньшие заданного числа. Для матрицы a обрабатывать нижнюю половину, для матрицы b – левую половину, для матрицы c – правую половину. Из первого полученного одномерного массива удалить элементы, большие среднего арифметического элементов второго массива, из второго массива удалить элементы, большие среднего арифметического элементов третьего массива.
  3. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, кратные заданному числу. Для матрицы a обрабатывать левую половину, для матрицы b – правую половину, для матрицы c – верхнюю половину. Из первого полученного одномерного массива удалить элементы, равные первому элементу, большему заданного числа, второго массива и равные первому элементу, большему заданного числа, третьего массива.
  4. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, модуль которых меньше заданного числа. Для матрицы a обрабатывать верхнюю половину, для матрицы b – нижнюю половину, для матрицы c – левую половину. Из первого полученного одномерного массива удалить элементы, большие минимального элемента второго массива, из второго массива удалить элементы, большие минимального элемента третьего массива.
  5. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, неравные v1 и неравные v2. Для матрицы a обрабатывать нижнюю половину, для матрицы b – левую половину, для матрицы c – правую половину. Из первого полученного одномерного массива удалить элементы, кратные первому элементу, большему v1, второго массива и кратные первому элементу, большему v1, третьего массива (v1 – положительное число).
  6. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, которые не равны заданному числу. Для матрицы a обрабатывать левую половину, для матрицы b – правую половину, для матрицы c – верхнюю половину. Из первого полученного одномерного массива удалить элементы, меньшие максимального элемента второго массива, из второго массива удалить элементы, меньшие максимального элемента третьего массива.
  7. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, абсолютная величина которых больше заданного числа. Для матрицы a обрабатывать правую половину, для матрицы b – верхнюю половину, для матрицы c – нижнюю половину. Из первого полученного одномерного массива удалить элементы, кратные минимальному элементу второго массива и кратные минимальному элементу третьего массива.
  8. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, причём отрицательные элементы должны быть поставлены в начало, положительные – в конец, а нулевые элементы удалены. Для матрицы a обрабатывать правую половину, для матрицы b – верхнюю половину, для матрицы c – нижнюю половину. Из первого полученного одномерного массива удалить элементы, равные первому чётному элементу второго массива, из второго массива удалить элементы, равные первому чётному элементу третьего массива.
  9. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, кратные заданному числу. Для матрицы a обрабатывать верхнюю половину, для матрицы b – нижнюю половину, для матрицы c – левую половину. Из первого полученного одномерного массива удалить элементы, большие первого отрицательного элемента второго массива и большие первого отрицательного элемента третьего массива.
  10. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, которые не попадают в заданный диапазон. Для матрицы a обрабатывать нижнюю половину, для матрицы b – левую половину, для матрицы c – правую половину. Из первого полученного одномерного массива удалить элементы, равные удвоенному минимальному значению второго массива, из второго массива удалить элементы, равные удвоенному минимальному значению третьего массива.
  11. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, которые не равны заданному числу. Для матрицы a обрабатывать левую половину, для матрицы b – правую половину, для матрицы c – верхнюю половину. Из первого полученного одномерного массива удалить элементы, которые не превышают половину максимума второго массива, из второго массива удалить элементы, которые не превышают половину максимума третьего массива.
  12. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, большие заданного положительного числа. Для матрицы a обрабатывать правую половину, для матрицы b – верхнюю половину, для матрицы c – нижнюю половину. Из первого полученного одномерного массива удалить элементы, кратные минимальному элементу второго массива и кратные минимальному элементу третьего массива.
  13. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, которые кратны одному заданному числу и не кратны другому заданному числу. Для матрицы a обрабатывать нижнюю половину, для матрицы b – левую половину, для матрицы c – правую половину. Из первого полученного одномерного массива удалить элементы, равные первому нечётному элементу второго массива и равные первому нечётному элементу третьего массива.
  14. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, причём отрицательные элементы должны быть умножены на свой номер в формируемом массиве, положительные – поделены на свой номер в формируемом массиве, а нулевые – удалены. Для матрицы a обрабатывать верхнюю половину, для матрицы b – нижнюю половину, для матрицы c – левую половину. Из первого полученного одномерного массива удалить элементы, меньшие среднего арифметического второго массива, из второго массива удалить элементы, меньшие среднего арифметического третьего массива.
  15. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, которые не попадают в заданный диапазон. Для матрицы a обрабатывать левую половину, для матрицы b – правую половину, для матрицы c – верхнюю половину. Из первого полученного одномерного массива удалить элементы, равные первому положительному элементу второго массива и равные первому положительному элементу третьего массива.
  16. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, неравные заданному числу. Для матрицы a обрабатывать правую половину, для матрицы b – верхнюю половину, для матрицы c – нижнюю половину. Из первого полученного одномерного массива удалить элементы, большие половины максимума второго массива, из второго массива удалить элементы, большие половины максимума третьего массива.
  17. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, которые не попадают в диапазон от -v до v, где v – заданное положительное число. Для матрицы a обрабатывать верхнюю половину, для матрицы b – нижнюю половину, для матрицы c – левую половину. Из первого полученного одномерного массива удалить элементы, кратные минимальному элементу второго массива и кратные минимальному элементу третьего массива.
  18. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие квадратный корень элементов матриц, квадрат которых больше заданного числа. Для матрицы a обрабатывать нижнюю половину, для матрицы b – левую половину, для матрицы c – правую половину. Из первого полученного одномерного массива удалить элементы, большие среднего арифметического второго массива, из второго массива удалить элементы, большие среднего арифметического третьего массива.
  19. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, некратные v1 и некратные v2. Для матрицы a обрабатывать левую половину, для матрицы b – правую половину, для матрицы c – верхнюю половину. Из первого полученного одномерного массива удалить элементы, равные минимальному элементу второго массива и равные минимальному элементу третьего массива.
  20. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, неравные заданному числу. Для матрицы a обрабатывать правую половину, для матрицы b – верхнюю половину, для матрицы c – нижнюю половину. Из первого полученного одномерного массива удалить элементы, большие среднего арифметического элементов второго массива, из второго массива удалить элементы, большие среднего арифметического элементов третьего массива.
  21. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, причём сначала должны идти элементы, кратные заданному числу, а потом – элементы, некратные заданному числу. Для матрицы a обрабатывать верхнюю половину, для матрицы b – нижнюю половину, для матрицы c – левую половину. Из первого полученного одномерного массива удалить элементы, равные первому элементу, большему заданного числа, второго массива и равные первому элементу, большему заданного числа, третьего массива.
  22. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, квадрат которых не равен заданному числу. Для матрицы a обрабатывать нижнюю половину, для матрицы b – левую половину, для матрицы c – правую половину. Из первого полученного одномерного массива удалить элементы, большие минимального элемента второго массива, из второго массива удалить элементы, большие минимального элемента третьего массива.
  23. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, причём сначала должны идти элементы, меньшие v1, затем – элементы, большие v2 (v1 < v2), остальные элементы должны быть удалены. Для матрицы a обрабатывать правую половину, для матрицы b – верхнюю половину, для матрицы c – нижнюю половину. Из первого полученного одномерного массива удалить элементы, равные первому нечётному элементу второго массива и равные первому нечётному элементу третьего массива.
  24. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, причём положительные элементы должны быть умножены на свой номер в формируемом массиве, отрицательные – поделены на свой номер в формируемом массиве, а нулевые – удалены. Для матрицы a обрабатывать правую половину, для матрицы b – верхнюю половину, для матрицы c – нижнюю половину. Из первого полученного одномерного массива удалить элементы, большие среднего арифметического элементов второго массива и большие среднего арифметического третьего массива.
  25. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, квадрат которых попадает в диапазон от v1 до v2, где v1 и v2 – положительные числа. Для матрицы a обрабатывать верхнюю половину, для матрицы b – нижнюю половину, для матрицы c – левую половину. Из первого полученного одномерного массива удалить элементы, кратные минимальному элементу второго массива и кратные минимальному элементу третьего массива.
  26. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, абсолютная величина которых больше заданного числа. Для матрицы a обрабатывать нижнюю половину, для матрицы b – левую половину, для матрицы c – правую половину. Из первого полученного одномерного массива удалить элементы, большие первого отрицательного элемента второго массива, из второго массива удалить элементы, большие первого отрицательного элемента третьего массива.
  27. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, квадрат которых меньше заданного числа. Для матрицы a обрабатывать левую половину, для матрицы b – правую половину, для матрицы c – верхнюю половину. Из первого полученного одномерного массива удалить элементы, равные первому чётному элементу второго массива и равные первому чётному элементу третьего массива.
  28. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, причём сначала должны идти элементы, кратные заданному числу, затем – элементы, кратные другому заданному числу, остальные элементы должны быть удалены. Для матрицы a обрабатывать нижнюю половину, для матрицы b – левую половину, для матрицы c – правую половину. Из первого полученного одномерного массива удалить элементы, равные первому положительному элементу второго массива и равные первому положительному элементу третьего массива.
  29. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, причём элементы, по модулю меньшие заданного числа, должны быть умножены на это число, а остальные – поделены. Для матрицы a обрабатывать верхнюю половину, для матрицы b – нижнюю половину, для матрицы c – левую половину. Из первого полученного одномерного массива удалить элементы, меньшие среднего арифметического второго массива, из второго массива удалить элементы, меньшие среднего арифметического третьего массива.
  30. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, причём сначала должны идти элементы, большие заданного числа, а потом – элементы, не большие заданного числа. Для матрицы a обрабатывать нижнюю половину, для матрицы b – левую половину, для матрицы c – правую половину. Из первого полученного одномерного массива удалить элементы, кратные минимальному элементу второго массива и кратные минимальному элементу третьего массива.
  31. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, модуль которых больше заданного числа. Для матрицы a обрабатывать левую половину, для матрицы b – правую половину, для матрицы c – верхнюю половину. Из первого полученного одномерного массива удалить элементы, которые не превышают половину максимума второго массива, из второго массива удалить элементы, которые не превышают половину максимума третьего массива.
  32. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, кратные заданному числу. Для матрицы a обрабатывать левую половину, для матрицы b – правую половину, для матрицы c – верхнюю половину. Из первого полученного одномерного массива удалить элементы, меньшие максимального элемента второго массива, из второго массива удалить элементы, меньшие максимального элемента третьего массива.
  33. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, которые попадают в заданный диапазон. Для матрицы a обрабатывать верхнюю половину, для матрицы b – нижнюю половину, для матрицы c – левую половину. Из первого полученного одномерного массива удалить элементы, равные удвоенному минимальному значению второго массива, из второго массива удалить элементы, равные удвоенному минимальному значению третьего массива.
  34. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, половина которых больше заданного числа. Для матрицы a обрабатывать правую половину, для матрицы b – верхнюю половину, для матрицы c – нижнюю половину. Из первого полученного одномерного массива удалить элементы, кратные минимальному элементу второго массива и кратные минимальному элементу третьего массива.
  35. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие элементы матриц, квадрат которых меньше заданного числа. Для матрицы a обрабатывать левую половину, для матрицы b – правую половину, для матрицы c – верхнюю половину. Из первого полученного одномерного массива удалить элементы, большие половины максимума второго массива, из второго массива удалить элементы, большие половины максимума третьего массива.
  36. Даны три прямоугольные матрицы a, b и c разного размера. Сформировать массивы, содержащие случайные элементы матриц. Для матрицы a обрабатывать правую половину, для матрицы b – верхнюю половину, для матрицы c – нижнюю половину. Из первого полученного одномерного массива удалить элементы, равные первому чётному элементу второго массива и равные первому чётному элементу третьего массива.