Выражение должно иметь тип указателя на объект, но имеет тип "int"
Компилятор жалуется в 24 строке, на b[j][i], а именно на j. Не знаю в чем проблема. Суть кода в умножении матриц.
#include <iostream>
#include <fstream>
using namespace std;
int main() {
int a[10][10], b[10][10],c[10][10], n,su=0;
ifstream f("i.txt");
ofstream of("o.txt");
f >> n;
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
f >> a[i][j];
}
}
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
f >> b[i][j];
}
}
for (int b = 0; b < n; b++) {
for (int d = 0; d < n; d++) {
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
su += ((a[i][j]) + (b[j][i]));
}
}
c[b][d] = su;
}
}
}
Ответы (1 шт):
Автор решения: MBo
→ Ссылка
Локальная переменная цикла for (int b = 0, компилятор видит её там, где нужн массив (b[j][i])
P.S. Код не особо похож на умножение матриц