Матричное выражение A*B - A - C (СИ)
Формулировка задачи:
Матричное выражение
Даны две матрицы A, B. Посчитайте выражение A*B - A, если это возможно.
_________________________________________________________________________
На входе
В первой строке располагаются два числа, количество строк и количество столбцов в матрице A, 0 < m ≤ 100, 0 < n ≤ 100. Следующие m строк содержат n целых чисел - элементов матрицы A. Далее аналогично задается матрица B._________________________________________________________________________
На выходе
Результат выражения A*B - A, или -1 если оно некорректно_________________________________________________________________________
Пример
На входе
2 2 1 1 1 1 2 2 2 2 2 2На выходе
3 3 3 3Решение задачи: «Матричное выражение A*B - A»
textual
Листинг программы
#include <conio.h>
#include <stdio.h>
int main(void)
{
int m1[100][100], i, j, k, m2[10][10], mult[100][100], r1, c1, r2, c2;
scanf("%d%d",&r1, &c1);
for(i = 0; i < r1; i++)
for(j = 0; j < c1; j++)
scanf("%d", &m1[i][j]);
scanf("%d%d", &r2, &c2);
for(i = 0; i < r2; i++)
for(j = 0; j < c2; j++)
scanf("%d",&m2[i][j]);
printf("bidsh:\n");
for(i = 0;i < r1; i++)
{
for(j = 0;j < c2; j++)
{
mult[i][j]=0;
for(k = 0;k < r1; k++)
mult[i][j] = m1[i][k] * m2[k][j] - m1[i][k];
printf("%d ",mult[i][j]);
}
printf("\n");
}
_getch ();
return 0;
}
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы с консолью и вводом/выводом данных
- Объявление переменных: матрицы m1 и m2, а также матрицы mult, которая будет хранить результат умножения матриц
- Ввод размеров матриц m1 и m2 с помощью функции scanf
- Заполнение матрицы m1 и m2 с помощью функции scanf
- Вычисление результата умножения матриц m1 и m2 в матрице mult
- Вывод результата на экран с помощью функции printf
- Ввод размера матрицы m1 и m2 с помощью функции scanf
- Заполнение матрицы m1 и m2 с помощью функции scanf
- Вычисление результата умножения матриц m1 и m2 в матрице mult
- Вывод результата на экран с помощью функции printf
- Ввод размера матрицы m1 и m2 с помощью функции scanf
- Заполнение матрицы m1 и m2 с помощью функции scanf
- Вычисление результата умножения матриц m1 и m2 в матрице mult
- Вывод результата на экран с помощью функции printf
- Ввод размера матрицы m1 и m2 с помощью функции scanf
- Заполнение матрицы m1 и m2 с помощью функции scanf
- Вычисление результата умножения матриц m1 и m2 в матрице mult
- Вывод результата на экран с помощью функции printf
- Ввод размера матрицы m1 и m2 с помощью функции scanf
- Заполнение матрицы m1 и m2 с помощью функции scanf