С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
-5 / 0 / 0
Регистрация: 31.12.2018
Сообщений: 35
1

Вычислить среднее арифметическое элементов строк матрицы

18.06.2019, 17:52. Показов 1820. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Я не могу понять как сделать. Кто понимает помогите сделать.
Вот код:
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
#include <math.h>
#include <iostream>
#include <iomanip>
#include <time.h>
#include <Windows.h>
 
using namespace std;
 
void crtmtx(int n1, int m1, double mt1[8][4])   //Функція створення матриці за формулою
{
    srand(time(NULL));
    int i1, j1; //Лічильники
    cout << "Матриця: " << endl;
    for (i1 = 0; i1 < n1; i1++)
    {
        for (j1 = 0; j1 < m1; j1++)
        {
            mt1[i1][j1] = (-1)*pow((2+i1/3+j1),i1)-exp(cos(j1))-3*3.14;
            cout << setw(10) << setprecision(5) << mt1[i1][j1];
        }
        cout << endl;
    }
}
void vctrmx(int n2, int m2,double mt2[8][4])   //Среднее арифметическое элементов строк матрицы
{
    int i2,j2;
    double sum_str,sr_arif;
 
    for (i2=0;i2<=n2;i2++)
{
        sum_str=0;
        sr_arif=0;
 
    for (j2=0;j2<=m2;j2++)
{
    sum_str=sum_str+mt2[i2][j2];
 
}
    cout<<"\n"<<sum_str;
    sr_arif=sum_str/n2;
    cout<<" ravno "<<sr_arif<<" \n ";
}
    cout << endl;
}
double fndG(int n3, double vc3[])   //Функція знаходження G за елементами масиву
{
    double g3;          //Вихідні данні
    double sum = 0;     //Сума
    double p;           //Добуток
    int k = 1, n = 1;   //Лічильники
    while (k <= 8)
    {
 
        p = 1;
        while (n <= k)
        {
            p *= vc3[n];
            n++;
        }
        sum += vc3[k] * vc3[k] - p;
        k++;
    }
    g3 = sqrt(fabs(sum));
    return g3;
}
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    //srand(time(NULL));
    int n = 8, m = 4;   //Кількість елементів
    double mt[8][4];    //Матриця
    double vc[8];       //Вектор
    double g;           //Вихідна змінна
    crtmtx(n, m, mt);
    vctrmx(n, m, mt);
    g = fndG(n, vc);
    cout << "G= " << g << endl;
}
Миниатюры
Вычислить среднее арифметическое элементов строк матрицы  
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.06.2019, 17:52
Ответы с готовыми решениями:

Массив: Найти среднее арифметическое элементов матрицы и сумму элементов тех строк матрицы, в которых отрицателен элемент главной диагонали.
Ребят не понимаю я с++ Дали создать программу Помогите пожалуйста Найти среднее арифметическое...

Вычислить среднее арифметическое и среднее геометрическое положительных элементов матрицы
Составить функцию что вычесляет среднее арифметическое и среднее геометрическое положительных...

Вычислить среднее арифметическое элементов матрицы
Здравствуйте, помогите пожалуйста с заданием. Очень нужна помощь!!!

Вычислить среднее арифметическое особых элементов матрицы
Ребята, помогите решить программу! Дана целочисленная квадратная матрица А порядка N, где...

5
7437 / 5029 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
18.06.2019, 19:25 2
Лучший ответ Сообщение было отмечено hope for life как решение

Решение

Цитата Сообщение от hope for life Посмотреть сообщение
не могу понять как сделать
заполнить вектор средними арифметическими значениями строк матрицы и использовать элементы вектора для расчёта G
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
#define _USE_MATH_DEFINES
#include <iostream>
#include <vector>
#include <cmath>
using namespace std;
 
double G (const vector<double>& x)
{
    double sum=0.0, mult;
    for (int k=1; k<=8; k++)
    {
       mult=1.0;
       for (int n=1; n<=k; n++)
       mult*=x[n-1];       
       sum+=x[k-1]*x[k-1]-mult;
    }   
    return sqrt(fabs(sum));
}
 
int main()
{
    const int N=8, M=4;
    double a[N][M];
    vector<double> x(N);
    
    cout << "Matrix:\n";
    for (int i = 0; i < N; i++)
    {
       x[i]=0.0;
       for (int j = 0; j < M; j++)
       {
       a[i][j]=pow(-(double)(2+i)/(3+j),i)-exp(cos(j))-3.*M_PI;
       x[i]+=a[i][j];
       cout << a[i][j] << "  ";
       }
       cout << "\n";
       x[i]/=M;
    }
    
    cout << "Vector:\n";
    for (int i = 0; i < N; i++) 
    cout << x[i] << "  ";
    cout << "\n";   
    
    cout << "G=" << G(x) << "\n";
 
system("pause");
return 0;
}
1
-5 / 0 / 0
Регистрация: 31.12.2018
Сообщений: 35
18.06.2019, 19:42  [ТС] 3
Yetty, Я что-то не пойму где вы вычисляете G

Добавлено через 5 минут
Точнее как вы вычисляете G
0
7437 / 5029 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
18.06.2019, 19:44 4
Цитата Сообщение от hope for life Посмотреть сообщение
что-то не пойму где вы вычисляете G
функция G строки 7-18.

обратите внимание на свои ошибки в записи формулы для a[i][j] - вынесли минус за pow, а если например i=2, т.е в квадрате и скобки потеряли у числителя и знаменателя, кроме того целочисленное деление - старайтесь не допускать в дальнейшем.

Добавлено через 2 минуты
Цитата Сообщение от hope for life Посмотреть сообщение
Точнее как вы вычисляете G
вектор передаётся в функцию, дальше два цикла - внутренний для вычисления произведения, внешний для нахождения суммы.
1
-5 / 0 / 0
Регистрация: 31.12.2018
Сообщений: 35
18.06.2019, 19:50  [ТС] 5
Yetty, Извините может я вас задолбал, но что это такое
строка 32 .*M_PI;Это Pi так понимаю.

Добавлено через 4 минуты
Просто первый раз вижу такое. Если это так то в дальнейшем буду использовать.
0
7437 / 5029 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
18.06.2019, 20:14 6
Цитата Сообщение от hope for life Посмотреть сообщение
M_PI;Это Pi так понимаю.
правильно понимаете. применять или нет - решать Вам. есть разные мнения на этот счёт. можете посмотреть например тему Есть ли какая-то константа в С, означающая число Пи
в которой кроме обсуждений приводится список констант.
1
18.06.2019, 20:14
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.06.2019, 20:14
Помогаю со студенческими работами здесь

Вычислить среднее арифметическое положительных элементов матрицы
Опять... Даже не знаю с чего начать, помогите: Ввести двумерный массив D. Вычислить среднее...

Даны две квадратные матрицы. Вычислить среднее арифметическое элементов главной и побочной диагонали каждой матрицы
помогите написать программный код на c++

Определить среднее арифметическое элементов матрицы, лежащих на пересечении заданных строк
Определить среднее арифметическое элементов, лежащих на пересечении строк, номера которых кратны R,...

Найти среднее арифметическое элементов каждой из четных строк этой матрицы
Задана квадратная матрица A размером N x N (N&lt;=10), со-стоящая из действительных элементов Найти...

Вычислить среднее арифметическое элементов указанного столбца матрицы
задан двумерный массив целых чисел размерностью многократно, в зависимости от запроса, произвести...

Вычислить среднее арифметическое элементов матрицы целых чисел
Доброго времени суток! Будьте добры, пожалуйста помогите написать программу, которая вычисляет...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru