Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
d1mka_
0 / 0 / 1
Регистрация: 21.04.2012
Сообщений: 1
#1

Получить новую матрицу прибавлением к элементам каждого столбца первой матрицы произведения элементов соответствующих строк второй матрицы - C++

24.04.2012, 16:46. Просмотров 1182. Ответов 1
Метки нет (Все метки)

Даны две действительные квадратные матрицы порядка n. Получить новую матрицу прибавлением к элементам каждого столбца первой матрицы произведения элементов соответствующих строк второй матрицы. Матрицы размещаются в памяти динамически с помощью операции new, значение n вводится по запросу с клавиатуры. В конце работы программы освободить выделенную память. Вывести исходные и результирующую матрицы.

алгоритм составил, подправьте для динамической памяти

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
#include "stdafx.h"
#include <iostream>
#include <ctime>
#include "conio.h"
#include <math.h>
using namespace std;
 
void main()
{
    const int n=6;
    int A[n][n],B[n][n],C[n][n],Pr[n];
    cout.fill(' ');
    srand(time(NULL));
    for (int j=0;j<n;j++)
        for (int i=0;i<n;i++)
        {
            A[j][i]=rand()%5;
        }
         cout << " massiv A: " << endl;
 for (int j=0;j<n; j++)
   {
     cout << "\n";
     for (int i=0;i<n; i++)
      {
        cout.width(4);      
        cout << A[j][i];
      }
   }
 for (int i=0;i<n;i++)
        for (int j=0;j<n;j++)
        {
            B[i][j]=rand()%5;
        }
         cout << "\n\n massiv B: " << endl;
 for (int i=0;i<n; i++)
   {
     cout << "\n";
     for (int j=0;j<n; j++)
      {
        cout.width(4);      
        cout << B[i][j];
      }
   }
 for (int i=0;i<n; i++)
 {
     Pr[i]=1;
     for(int j=0;j<n; j++)
     {
         Pr[i]=B[i][j]*Pr[i];
     }
 }
      cout << "\n\n massiv C: " << endl;
      for (int j=0;j<n;j++)
        for (int i=0;i<n;i++)
        {
            C[j][i]=A[j][i]+Pr[i];
        }
     for (int j=0;j<n; j++)
   {
     cout << "\n";
     for (int i=0;i<n; i++)
      {
        cout.width(4);      
        cout << C[j][i];
      }
   }
 getch();
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.04.2012, 16:46
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Получить новую матрицу прибавлением к элементам каждого столбца первой матрицы произведения элементов соответствующих строк второй матрицы (C++):

Прибавить к элементам каждого столбца первой матрицы произведения элементов соответствующих строк второй
Привет ВСЕМ!!! Помогите пожалуйста с одной задачкой!!!) Пусть даны две...

Даны две целочисленные матрицы 4-го порядка. Получить новую * матрицу путем вычитания из элементов каждого столбца первой матрицы
даны две целочисленные матрицы 4-го порядка. Получить новую матрицу путем...

Получить новую матрицу умножением элементов первой матрицы на наибольшее из значений элементов соответствующий строки второй матрицы
Даны две действительные квадратные матрицы порядка n. Получить новую матрицу...

Массив: Получить новую матрицу следующим способом: умножением Min каждой строки первой матрицы на Max соответствующего столбца второй
Пусть даны две вещественные матрицы порядка N. Получить новую матрицу...

1)Даны две действительные квадратные матрицы порядка n. Получить новую матрицу : А) умножение элементов каждой строки первой матрицы на наибольшее из
1)Даны две действительные квадратные матрицы порядка n. Получить новую матрицу...

1
Qazan
213 / 61 / 25
Регистрация: 30.04.2013
Сообщений: 838
Записей в блоге: 10
30.04.2013, 22:39 #2
там матрицы статические у тебя ))
действительные ~ вещественные :
C++
1
2
3
4
5
6
7
8
   double * * p = 0;
   p = new double*[N];     // массив указателей на даблы 
   for(int i = 0; i < N;i++) 
   {
     p[i] = new double[M];  // заполняем указатели 1го массива
   }
 
  // элемент матрицы так же p[i][j] ;  навсякслучй  p[i] ~*(p +  i) =>  *(*(p +  i) +  j)
Добавлено через 5 минут
C++
1
2
3
4
5
6
7
  Деструктуризация : 
  
   for(int i = 0; i < N;i++) 
   {
     delete [] p[i];  // освобождаем указатели 1го массива
   }
   delete [] p; // освобождаем основной столбец
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.04.2013, 22:39
Привет! Вот еще темы с решениями:

Даны две действительные квадратные матрицы порядка n. Получить новую матрицу: а) умножением элементов каждой строки первой матрицы на наибольш
Даны две действительные квадратные матрицы порядка n. Получить новую...

Даны две действительные квадратные матрицы порядка n. Получить новую матрицу: путем умножения элементов каждой строки первой матрицы на наибольшее из
Даны две действительные квадратные матрицы порядка n. Получить новую матрицу:...

Получить новую матрицу умножением элементов каждой строки первой матрицы
Даны две действительные квадратные матрицы порядка n.Получить новую матрицу...

Определить, что все элементы строки первой матрицы больше соответствующих элементов строки второй матрицы
Помогите,пожалуйста,с решением массивов в с++.надо в статическом и динамическом...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru