Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Написать функцию, вычисляющую произведение двух матриц - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Создание файлов в подпапке.Подскажите http://www.cyberforum.ru/cpp-beginners/thread764845.html
Есть код, создающий файл в папке с ехе. ofstream Error_logfile("Error.log"); А как сделать, что бы он создавался в папке(лежащей рядом с ехе).Например, в logs?
C++ Найти наименьший элемент матрицы Как найти наименьший элемент матрицы? http://www.cyberforum.ru/cpp-beginners/thread764826.html
C++ Трабл с обращением к функции класса
Здравствуйте, у меня появилась проблема в том, что при обращении к функции шаблонного класса вылетает ошибка: CArray<int> arr_int; arr_int.SetCapacity(2); arr_int.AddElement(4); ...
C++ Рекурсия функций
Пожалуйста, киньте ссылку на подробное изучение рекурсии функций, а то читаю самоучитель, там этому уделено мало внимания и не очень хорошо объяснено, а я хочу это понять. Заранее спасибо.
C++ Черепашья графика (язык Лого) http://www.cyberforum.ru/cpp-beginners/thread764802.html
Хочу смоделировать перемещение черепахи по полю. У черепахи есть перо. Если оно опущено, то на поле остается след, если поднято - следа не будет. При каждом вводе на экране должна отображаться...
C++ Определить номер подматрицы, среднее арифметическое элементов которой имеет наибольшее значение. Помогите пожалуйста решить задачу, очень нужно В квадратной матрице A(m,n) рассмотреть квадратные подматрицы размерностью 1, 2, ... , n, причем для всех подматриц левым верхним элементом является... подробнее

Показать сообщение отдельно
Nixy
ComfyMobile
400 / 281 / 8
Регистрация: 24.07.2012
Сообщений: 916
17.01.2013, 22:06
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
#include <iostream>
 
using namespace std;
 
 
int ** multiplication(int row_1,int col_1,int** matrix_1,
                      int row_2,int col_2,int** matrix_2 ){
        if (col_1==row_2) {
            int** result= new int*[row_1];
            for (int i = 0; i < row_1; i++) {
                result[i] = new int[col_2];
            }
 
            for (int i = 0; i < row_1; i++) {
                for (int j = 0; j < col_2; j++) {
                    int sum = 0;
                    for (int k = 0; k < row_2; k++) {
                        sum +=matrix_1[i][k]*matrix_2[k][j];
                    }
                    result[i][j] = sum;
                }
            }
            return result;
        }
        return NULL;
 
}
 
 
int main()
{
    system("chcp 1251");
 
    int row_1,col_1;
    int** matrix_1;
 
    int row_2,col_2;
    int** matrix_2;
 
    cout << "Введите размеры 1 матрицы " << endl;
    cin >> row_1 >> col_1;
 
    matrix_1= new int*[row_1];
            for (int i = 0; i < row_1; i++) {
                matrix_1[i] = new int[col_1];
                for (int j = 0; j < col_1; j++) {
                    cout <<"Введите элемент " ;
                    cin >> matrix_1[i][j];
                }
                cout << endl;
    }
 
    cout << "Введите размеры 2 матрицы " << endl;
    cin >> row_2 >> col_2;
 
    matrix_2= new int*[row_2];
            for (int i = 0; i < row_2; i++) {
                matrix_2[i] = new int[col_2];
                for (int j = 0; j < col_2; j++) {
                    cout <<"Введите элемент " ;
                    cin >> matrix_2[i][j];
                }
                cout << endl;
    }
 
    cout << "Матрица 1 "<<endl;
    for (int i = 0; i < row_1; i++) {
        for (int j = 0; j < col_1; j++) {
            cout << matrix_1[i][j] <<" ";
        }
        cout << endl;
    }
 
    cout  << "Матрица 2 "<< endl;
    for (int i = 0; i < row_2; i++) {
        for (int j = 0; j < col_2; j++) {
            cout << matrix_2[i][j] <<" ";
        }
        cout << endl;
    }
    cout << endl;
 
    int ** result = multiplication(row_1,col_1,matrix_1,row_2,col_2,matrix_2);
 
    if (result) {
        cout << "Матрица результат "<<endl;
        for (int i = 0; i < row_1; i++) {
            for (int j = 0; j < col_2; j++) {
                cout << result[i][j] <<" ";
            }
            cout << endl;
        }
        for (int i = 0; i < row_1; i++) {
            delete[] result[i];
        }
        delete[] result;
    } else {
        cout << "Произведение невозможно "<<endl;
    }
 
    system("pause");
    return 0;
 
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru