Программы линейной структуры. Простейшие программы циклической структуры. Разветвления, циклы и разветвления. Простейшие алгоритмы обработки массивов, страница 22

      4. Заданы два одномерных массива различных размеров. Объе­динить их в один  массив,  включив второй массив между К-м  и (K+1)-м элементами первого (К задано).


5. Заданы две матрицы А и В размером N*N. Сформировать из них прямоугольную матрицу X размером N*2N, включая в первые N столбцов матрицу А, в следующие — матрицу В.

6. Задав массив А размером N*M и вектор В размером М. Элементы первого столбца массива А упорядочены по убыванию. Включить массив В в качестве новой строки в массив А с сохране­нием упорядоченности по элементам первого столбца.

7. Матрица размещена в одномерном массиве по строкам. Уда­лить К-ю строку матрицы (К задано) из одномерного массива. Результат напечатать по строкам.

8. В задаче 7 удалить К-й столбец. Результат напечатать по строкам.

9. В задаче 7 поменять местами К-ю и L-ю строки. Результат вывести по строкам.

10. В задаче 7 поменять местами К-й и L-й столбцы. Результат вывести по строкам.

11. Из заданной матрицы удалить К-ю строку и L-й столбец.

12. В заданной матрице заменить К-ю строку и L-й столбец нулями, кроме элемента, расположенного на их пересечении.

13. В одномерном массиве размещены: в первых N элементах значения аргумента в порядке возрастания, в следующих — соот­ветствующие им значения функция, и задана пара чисел — значе­ния аргумента и функции. Поместить их в массив с сохранением упорядоченности по значениям аргумента. Напечатать полученный массив в виде двух параллельных столбцов (аргумент и функция).

14. Заданную квадратную матрицу преобразовать, используя умножение строки на число и сложение строк, таким образом, чтобы все элементы первого столбца обратились в нуль, кроме элемента, расположенного на главной диагонали (см. п. 18 введения к работе).

15. Заданную квадратную матрицу преобразовать, используя умножение столбца на число и сложение столбцов, таким образом, чтобы все элементы первой строки обратились в нуль, кроме эле­мента, расположенного на главной диагонали (см. п. 18 введения к работе).

Указания    к    решению    задач    II    уровня.

1. Для формирования одномерного массива X из диагональных элементов матрицы А размером N*N необходимо выполнять X [i]==А[i][i] при i=0, .... N-1.

4. «Хвост» первого массива (начиная с (К+1)-го элемента) переместить вправо на число позиций, равное размеру второго массива. Далее заполнить первый массив, начиная с (К+1)-го эле­мента, элементами второго массива.

5. Внутренний цикл (по номеру столбца J) целесообразно вы­полнять от 0 до N-1, присваивая для каждого J значения двум эле­ментам строки: X[i][j]=A[i][j], X[i][N-1+j]=B[i][j].

6. Место включения новой строки определяется местом вклю­чения в упорядоченный первый столбец первого элемента новой строки. Новую строку нужно включить перед строкой i, для ко­торой выполняется условие

А[i][0]<В[0] (см. п. 13 теоретического введения).

7. К-я строка матрицы расположена в одномерном массиве в элементах с ((К—1)*М+1)-го до (К*М)-го.

8. К-й столбец матрицы расположен в элементах с индексами i*М+К, i=0,1, 2, .... N-1.

9. См.   указание  к задаче 7.

10. См.  указание к задаче 8.

12. Перед заполнением нулями К-й строки и L-го столбца целесообразно элемент, лежащий на их пересечении, переслать во вспомогательную переменную, а после заполнения нулями восста­новить его значение.

13. Значение аргумента включить в первую половину массива с сохранением упорядоченности. Значение функции включить на соответствующее место во вторую половину массива перед (N+I+ 1)-м элементом, где I — индекс элемента, в который помещено значение аргумента, N — исходное число значений аргумента и функции.

14. Из каждой строки, начиная со второй, необходимо вычи­тать элементы первой строки, умноженные на коэффициент Р= А[К][0]/А[0][0], т. е. в цикле по номеру строки К (К=1, . . ., N-1) организовать цикл по номеру столбца J (0,l, …, N-1), в котором выполнять А[К][J]=A[K][ J]—A[0][J]*P. (Предполагается, что А[0][0] ¹0.)