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

Построить последовательность из элементов матрицы - C++

Восстановить пароль Регистрация
 
George_Smith
7 / 7 / 2
Регистрация: 18.08.2013
Сообщений: 284
04.06.2016, 10:30     Построить последовательность из элементов матрицы #1
Знакомый попросил помочь, мол "Тыжпрограммист", а я в C++ не рублю. Задачи-то простые, алгоритм у них легкий, но есть проблемы с тонкостями языка.

Дана действ. квадрат. матрица порядка n. Построить последовательность a1, a2, ... an по принципу: если в i-той строке матрицы на главной диагонали лежит отрицательный элемент, то ai равняется сумме предшествующих диагональному элементов, если неотрицательное - то сумме стоящих ЗА диагональным. Суммирование выполнить в виде подпрограммы.

Вот что я успел "набыдлокодить":

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
#include <iostream>
#include <iomanip>
 
using namespace std;
 
float sum(float *a, int k){
    float summa = 0;
    if (*a[k][k]<0){
        for (int z=0; z<k; z++){
            summa = summa + *a[k][z];
        }
    } else {
        for (int z = n; z>a; z--){
            summa = summa + *a[k][z]
        }
    }
    return (summa);
}
 
int main()
{
    int n,i;
    cin >> n;
    float matrix[n][n];
    for (int i=0;i<n;i++){
        for (int j=0;j<n;j++){
            cin >> matrix[i][j];
        }
    }
    for (int i=0;i<n;i++){
        for (int j=0;j<n;j++){
            cout << matrix[i][j];
        }
        cout << "\n";
    }
 
    sum(*matrix, 1);
 
 
}

Не пойму, как передать матрицу в функцию, да и надо ли вообще это делать
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.06.2016, 10:30     Построить последовательность из элементов матрицы
Посмотрите здесь:

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

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Encephalopathy
2 / 2 / 0
Регистрация: 04.06.2016
Сообщений: 21
04.06.2016, 19:08     Построить последовательность из элементов матрицы #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
#include <iostream>
#include <iomanip>
 
using namespace std;
 
float sum(float **a, int k){
    float summa = 0;
    if (a[k][k]<0){
        for (int z=0; z<k; z++){
            summa = summa + a[k][z];
        }
    } else {
        for (int z =k; z>k; z--){
            summa = summa + a[k][z];
        }
    }
    return summa;
}
 
int main()
{
 int n;
    cin >> n;
    float ** matrix=new float*[n];
 
    for(int i=0;i<n;i++)
    {
    matrix[i]=new float[n];
    }
 
    for (int i=0;i<n;i++){
        for (int j=0;j<n;j++){
            cin >> matrix[i][j];
        }
    }
    for (int i=0;i<n;i++){
        for (int j=0;j<n;j++){
            cout << matrix[i][j];
        }
        cout << "\n";
    }
 
    sum(matrix, 1);
 
 
}
Yandex
Объявления
04.06.2016, 19:08     Построить последовательность из элементов матрицы
Ответ Создать тему
Опции темы

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