Study/Cycles/Matrix

Материал из ProgSchool

Перейти к: навигация, поиск

Содержание

Двумерные массивы

Сложить две строки (2 балла)

Дано m, n, матрица из m строк и n столбцов, затем даны k и l.

Нужно вывести матрицу, в которой на месте строки k стоит сумма строк k и l.

Пример:

3 2
1 2
3 4
5 6
1 3

ответ:

6 8
3 4
5 6

Т.е. мы сложили 1 и 3 строки матрицы и поставили на место первой.

Сложить две строки с учётом знаков (2 балла)

То же самое, но даны k и l, которые могут быть отрицательными. Надо складывать строки |k| и |l|, но если k или l меньше нуля, то соответствующую строку надо вычитать, а не прибавлять.

пример

3 2
1 2
3 4
5 6
-1 3

ответ

4 4
3 4
5 6

Перемножить матрицы (2 балла)

Даны числа m, n, матрица из m строк и n столбцов, числа k, l, матрица из k строк и l столбцов. Задача: если n != k, то вывести слово "ERROR", Если n == k, то вывести произведение первой и второй матрицы. Две матрицы перемножаются так: матрица C является произведением матриц A на B (AB = C), если каждый элемент матрицы C получен по формуле: c[i][j] = a[i][1] * b[1][j] + a[i][2] * b[2][j] + a[i][3] * b[3][j] +.....+ a[i][n] * b[n][j].

пример:

2 2
1 2
3 4
2 1
2
3

ответ:

8
18

Транспонирование (2 балла)

Даны числа m, n, матрица из m строк и n столбцов. Нужно транспонировать матрицу.

пример

3 2
1 2
3 4
5 6

ответ:

1 3 5
2 4 6


Далее

http://acmp.ru/index.asp?main=tasks&ob=iq&id_type=15

Личные инструменты
Пространства имён
Варианты
Действия
Навигация
Рекомендуем посмотреть
Инструменты