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

Функция для вычисления следа матрицы и произведения матриц - C++

Восстановить пароль Регистрация
 
Tima1996
0 / 0 / 0
Регистрация: 03.10.2014
Сообщений: 111
21.11.2014, 18:45     Функция для вычисления следа матрицы и произведения матриц #1
Дан ряд квадратных матриц A, {A}^{2}, ..., {A}^{N}. Причем N вводим сами. Надо вычислить след(сумма элементов на главной диагонали) каждой матрицы и вывести на экран. Использовать две функции: вычисляющую след матрицы, вычисляющую произведение матриц.
Например: Матрица А:
2 2
2 2
След: 2+2=4
Матрица {A}^{2}(т.е. умножаем матрицу саму на себя):
2 2 2 2 12 12
2 2 2 2 12 12
След: 12+12=24
Матрица {A}^{3}:
12 12 12 12 48 48
12 12 12 12 48 48
След: 48+48=96
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.11.2014, 18:45     Функция для вычисления следа матрицы и произведения матриц
Посмотрите здесь:

Вычисления произведения и суммы двух матриц C++
Составьте программу вычисления произведения элементов матрицы B(N,N), кратных 5. C++
Вычисление следа матрицы и определителя C++
C++ Составить программу вычисления следа квадратной матрицы
Написать функцию для вычисления следа квадратной матрицы C++
Функция для вычисления суммы элементов матрицы кратных 3 C++
Написать функцию для вычисления произведения значений матрицы вещественных или целых чисел C++
Вычисление степени матрицы, вычисления произведения двух матриц, вычисление суммы двух матриц C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Tima1996
0 / 0 / 0
Регистрация: 03.10.2014
Сообщений: 111
23.11.2014, 12:57  [ТС]     Функция для вычисления следа матрицы и произведения матриц #2
у меня есть код умножений матриц:
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
#include <iostream.h>
#include <vcl.h>
#include <conio.h>
 
int main(int argc, char* argv[])
{
double a[100][100], b[100][100], c[100][100], d[100][100], e[100][100];
int i,j,m,n;
 
cout<<"Matrix size: ";
cin>>n;
cout<<endl;
 
cout<<"a matrix:"<<endl;
for(i=0; i<n; i++)
  {
    for(j=0; j<n; j++)
      {
        cin>>a[i][j];
      }
  }
cout<<"b matrix:"<<endl;
for(i=0; i<n; i++)
  {
    for(j=0; j<n; j++)
      {
        cin>>b[i][j];
      }
  }
cout<<"c matrix:"<<endl;
for(i=0; i<n; i++)
  {
    for(j=0; j<n; j++)
      {
        cin>>c[i][j];
      }
  }
for(i=0; i<n; i++)
  {
    for(j=0; j<n; j++)
      {
       c[i][j]=0;
        for(m=0; m<n; m++)
          {
            d[i][j]+=a[i][m]*b[m][j];
          }
      }
  }
 
cout<<"d matrix:"<<endl;
for(i=0; i<n; i++)
  {
    for(j=0; j<n; j++)
      {
        cout<<d[i][j]<<" ";
      }
    cout<<endl;
  }
for(i=0; i<n; i++)
  {
    for(j=0; j<n; j++)
      {
       for(m=0; m<n; m++)
          {
            e[i][j]+=d[i][m]*a[m][j];
          }
      }
  }
cout<<"e matrix:"<<endl;
for(i=0; i<n; i++)
  {
    for(j=0; j<n; j++)
      {
        cout<<e[i][j]<<" ";
      }
    cout<<endl;
  }
        getch();
        return 0;
}
Добавлено через 1 минуту
еще у меня есть код следа матрицы:
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
#include <iostream.h>
#include <conio.h>
#include <vcl.h>
 
int main(int argc, char* argv[])
{
int i,j;
int Mas[3][3];
int sum=0;
 
cout << "Vvedite MASSIV: " << endl;
for(i=0; i<3; i++)
  {
    for(j=0; j<3; j++)
      {
        cin >> Mas[i][j];
      }
  }
 
  for(i=0; i<3; i++)
  {
    for(j=0; j<3; j++)
      {
        if(i==j) sum+=Mas[i][j];
      }
  }
cout << sum;
 
        getch();
        return 0;
}
Добавлено через 2 минуты
проблема только в том, что я никак не могу понять, как это все объединить воедино, и как умножать поцикльно матрицу саму на себя, помогите прошу вас...
Yandex
Объявления
23.11.2014, 12:57     Функция для вычисления следа матрицы и произведения матриц
Ответ Создать тему
Опции темы

Текущее время: 23:27. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru