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

Массивы.Сумма элементов!!! - C++

Восстановить пароль Регистрация
 
АВ
Сообщений: n/a
07.01.2012, 15:18     Массивы.Сумма элементов!!! #1
Нужно перемножить 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
81
82
83
#include <iostream>
#include <cstdlib> 
using namespace std;
 
long double** ymnogenie(int n, long double **A, long double **B){ 
    long double  **C;   // ГіГЄГ*Г§Г*òåëü Г*Г* ГґГіГ*êöèþ
    int i,j;
    C=new long double *[n];
    for ( i=0; i<n; i++){
        C[i]=new long double [n];
    }
    for ( i=0; i<n; ++i){
        for ( j=0; j<n; ++j){
            C[i][j]=0;
            for (int r=0; r<n; r++){
                C[i][j]+=A[i][r]*B[r][j];
            }
        }
    }
return C;
}
 
int main()
{
    int n, sum;
      cout<<"Vvedite razmeri matrix:"<<endl;
            cout<<"n=m=";
            cin>>n;
            /*ñîçäГ*Гѕ 2 äèГ*Г*ìè÷åñêèõ äâóõìåðГ*ûõ Г¬Г*Г±Г±ГЁГўГ*(2 ГЄГўГ*äðГ*ГІГ*ûå Г¬Г*òðèöû)*/
      long double  **A; 
      long double  **B;
            A=new long double *[n]; 
            B=new long double *[n]; 
            for (int i=0; i<n; i++){
                A[i]=new long double [n];
                B[i]=new long double [n];
            }
 
            
/* Г§Г*ïîëГ*ГїГѕ Г¬Г*òðèöó ГЂ*/
            for ( i=0; i<n; i++){
                for (int j=0; j<n; ++j){
                    A[i][j]=rand()%10;
                }
            }    
/* Г§Г*ïîëГ*ГїГѕ Г¬Г*òðèöó B*/
            for ( i=0; i<n; i++){
                for (int j=0; j<n; ++j){
                    B[i][j]=rand()%10;
                }
            }    
/*ñîçäГ*Гѕ Г¬Г*òðèöó Q Гў êîòîðóþ áóäåò Г§Г*ïèñûâГ*ГІГ±Гї ðåçóëüòГ*ГІ ГіГ¬Г*îäåГ*ГЁГҐ A Г*Г* P (Г¬Г*òðèöГ* C)*/
    long double  **Q; 
    Q=new long double *[n];
    for (i=0; i<n;i++){
        Q[i]=new long double [n];
    }
// âûçûâГ*Гѕ ГґГіГ*êöèþ mnozim 
    Q=ymnogenie(n, A, B);
//âûâîæó Г¬Г*òðèöó Q
             for (i=0; i<n; i++){
                    for (int j=0; j<n; ++j){
                        if (j+1<n){
                            cout<<Q[i][j]<<" "; 
                        }
                        else {
                           cout<<Q[i][j]<<" "<<endl; 
                        } 
             }}
 
    for (i=0; i< n; i++) //Îáîéäåì îïÿòü æå ГўГҐГ±Гј Г¬Г*Г±Г±ГЁГў
    {
        sum = 0; //Г’ГҐГЄГіГ№Г*Гї ñóììГ* ýëåìåГ*òîâ (ГІГҐГЄГіГ№ГҐГ© ñòðîêè)
        for (int j=0; j< n; j++) //Îáîéäåì ñòîëáöû
        
            sum += Q[i][j];
             for (int i=0; i< n; i++) //Îáîéäåì ñòîëáöû
        
            sum += Q[i][j];
 
 cout<<i<<" summa="<<sum<<endl;
 
 return 0;}}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.01.2012, 15:18     Массивы.Сумма элементов!!!
Посмотрите здесь:

C++ Двумерные массивы. Сумма элементов не превышающих число
C++ Массивы: сумма элементов
C++ Массивы: сумма отрицательных элементов
Одномерные массивы (сумма отрицательных элементов, произведение между максимальным и минимальным элементами, упорядочить по возрастанию) C++
C++ ДИНАМИЧЕСКИЕ МАССИВЫ.Найти номер строки, в которой сумма отрицательных нечетных элементов самая большая
Одномерные массивы: количество элементов, сумма, перестановки по условию C++
C++ Максимальная сумма элементов строки / минимальная сумма элементов столбца матрицы
C++ Массивы: произведение ненулевых элементов, сумма четных чисел расположенных до минимального элемента

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
john24
1 / 1 / 0
Регистрация: 07.01.2012
Сообщений: 14
08.01.2012, 14:03     Массивы.Сумма элементов!!! #2
Лови:
C++
1
2
3
4
5
6
7
8
9
10
11
for (i=0; i< n; i++) {//Обойдем опять же весь массив
    
        sum = 0; //Текущая сумма элементов (текущей строки)
        for (int j=0; j< n; j++){ //Обойдем столбцы
                
                        
                       //Обойдем столбцы
            sum += Q[i][j];}
 
                        cout<<i<<" summa="<<sum<<endl;}
return 0;
АВ
Сообщений: n/a
08.01.2012, 18:53     Массивы.Сумма элементов!!! #3
урааа
john24, большое спасибо)))
Yandex
Объявления
08.01.2012, 18:53     Массивы.Сумма элементов!!!
Ответ Создать тему
Опции темы

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