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

Найти наибольшее среди средних арифметических значений строк матрицы - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.90
zttx
1 / 1 / 0
Регистрация: 01.12.2011
Сообщений: 65
01.12.2011, 12:31     Найти наибольшее среди средних арифметических значений строк матрицы #1
сформировать матрицу размером m*n и найти наибольшее среди арифметических ее строк
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.12.2011, 12:31     Найти наибольшее среди средних арифметических значений строк матрицы
Посмотрите здесь:

C++ Найти наибольшее из значений элементов, расположенных в закрашенной части матрицы
C++ Сформировать вектор из средних арифметических значений по строкам матрицы
Сформировать матрицу, найти наибольшее среди средних арифметических элементов ее строк C++
C++ Сформировать матрицу размером MxN и найти наибольшее среди средних арифметических элементов ее строк.
Матрицы. Найти максимальное значение среди буквенных символов и минимальное среди цифровых значений C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
01.12.2011, 12:50     Найти наибольшее среди средних арифметических значений строк матрицы #2
Цитата Сообщение от zttx Посмотреть сообщение
сформировать матрицу размером m*n и найти наибольшее среди арифметических ее строк
У матрицы бывают арифметические строки? А еще какие строки у матрицы бывают?
zttx
1 / 1 / 0
Регистрация: 01.12.2011
Сообщений: 65
01.12.2011, 12:53  [ТС]     Найти наибольшее среди средних арифметических значений строк матрицы #3
ой, не дописала..
сформировать матрицу размером m*n и найти наибольшее среди средних арифметических ее строк
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
01.12.2011, 13:13     Найти наибольшее среди средних арифметических значений строк матрицы #4
Если матрица mas[][] размером m*n сформирована, то так:
C
1
2
3
4
5
6
7
8
9
10
11
12
        int i, j, max=0, tmp;       ;
        for(i=0; i<n; i++)
            max+=mas[0][i];
        for(i=1; i<m; i++)
        {
            tmp=0;
            for(j=0; j<n; j++)
                tmp+=mas[i][j];
            if(tmp>max)
                max=tmp;
        }
        printf("%lf", (double)max/n);
сформировать матрицу осилите сами?
zttx
1 / 1 / 0
Регистрация: 01.12.2011
Сообщений: 65
01.12.2011, 13:53  [ТС]     Найти наибольшее среди средних арифметических значений строк матрицы #5
ой.. думаю, что нет.. я только учусь..
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
01.12.2011, 14:35     Найти наибольшее среди средних арифметических значений строк матрицы #6
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
#include <iostream>
using namespace std;
int main()
{ 
    int i, j, max=0, tmp, **mas, m, n;
    cout<<"m= ";
    cin>>m;
    cout<<"n= ";
    cin>>n;
    mas=new int*[m];
    for(i=0; i<m; i++)
    {
        mas[i]=new int[n];
        for(j=0; j<n; j++)
        {
            cout<<"["<<i<<"]["<<j<<"]= ";
            cin>>mas[i][j];
        }
    }
    cout<<"Matr:"<<endl;
    for(i=0; i<m; i++)
    {
        for(j=0; j<n; j++)
            cout<<mas[i][j]<<" ";
        cout<<endl;
    }
    for(i=0; i<n; i++)
        max+=mas[0][i];
    for(i=1; i<m; i++)
    {
        tmp=0;
        for(j=0; j<n; j++)
            tmp+=mas[i][j];
        if(tmp>max)
            max=tmp;
    }
    cout<<"Max sredn-arifm: "<<(double)max/n<<endl;
    for (i=0; i<m; i++)
        delete[] mas[i];
    delete[] mas;
 
    return 0;
}
zttx
1 / 1 / 0
Регистрация: 01.12.2011
Сообщений: 65
01.12.2011, 14:51  [ТС]     Найти наибольшее среди средних арифметических значений строк матрицы #7
а если элементы матрицы не самому вводить, а чтобы это случайные числа были? что в этом случае?
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
01.12.2011, 15:04     Найти наибольшее среди средних арифметических значений строк матрицы #8
Цитата Сообщение от zttx Посмотреть сообщение
что в этом случае?
тяжелый случай:
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
#include <stdlib.h>
#include <time.h>
#include <iostream>
using namespace std;
int main()
{ 
        int i, j, max=0, tmp, **mas, m, n;
        srand( time( NULL ) );
        cout<<"m= ";
        cin>>m;
        cout<<"n= ";
        cin>>n;
        mas=new int*[m];
        for(i=0; i<m; i++)
        {
                mas[i]=new int[n];
                for(j=0; j<n; j++)
                {
                     mas[i][j]=rand()%10;
                }
        }
        cout<<"Matr:"<<endl;
        for(i=0; i<m; i++)
        {
                for(j=0; j<n; j++)
                        cout<<mas[i][j]<<" ";
                cout<<endl;
        }
        for(i=0; i<n; i++)
                max+=mas[0][i];
        for(i=1; i<m; i++)
        {
                tmp=0;
                for(j=0; j<n; j++)
                        tmp+=mas[i][j];
                if(tmp>max)
                        max=tmp;
        }
        cout<<"Max sredn-arifm: "<<(double)max/n<<endl;
        for (i=0; i<m; i++)
                delete[] mas[i];
        delete[] mas;
 
    return 0;
}
zttx
1 / 1 / 0
Регистрация: 01.12.2011
Сообщений: 65
01.12.2011, 15:10  [ТС]     Найти наибольшее среди средних арифметических значений строк матрицы #9
а зачем библиотека time.h?
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
01.12.2011, 15:13     Найти наибольшее среди средних арифметических значений строк матрицы #10
Цитата Сообщение от zttx Посмотреть сообщение
а зачем библиотека time.h?
вот тут почитайте:
http://www.cyberforum.ru/cpp-beginners/thread44753.html
самое первое сообщение.
zttx
1 / 1 / 0
Регистрация: 01.12.2011
Сообщений: 65
01.12.2011, 16:26  [ТС]     Найти наибольшее среди средних арифметических значений строк матрицы #11
а если без этой библиотеки?
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
01.12.2011, 16:31     Найти наибольшее среди средних арифметических значений строк матрицы #12
Цитата Сообщение от zttx Посмотреть сообщение
а если без этой библиотеки?
а Вы попробуйте и увидите, что компилятор будет ругаться на строчку:
C++
1
              srand( time( NULL ) );
zttx
1 / 1 / 0
Регистрация: 01.12.2011
Сообщений: 65
01.12.2011, 16:36  [ТС]     Найти наибольшее среди средних арифметических значений строк матрицы #13
а если без этой библиотеки обойтись?

Добавлено через 2 минуты
так мне не надо, чтобы он каждый раз менял числа..
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
01.12.2011, 16:38     Найти наибольшее среди средних арифметических значений строк матрицы #14
Цитата Сообщение от zttx Посмотреть сообщение
а если без этой библиотеки обойтись?
как я понимаю, сейчас речь идет о:
C++
1
 srand( time( NULL ) );
это не библиотека, но суть не в этом.
Можно из моего последнего кода удалить (или если умеете закомментировать) две строки:
C++
1
#include <time.h>
и
C++
1
srand( time( NULL ) );
Программа после этого будет работать. Единственное вот что. Вы ее запустите несколько раз, вводя при этом одинаковые значения n и m (например 3 и 4) и посмотрите на значения матрицы (будут они меняться или нет) и все поймете. Если Вас это устроит, то оставляйте так.
zttx
1 / 1 / 0
Регистрация: 01.12.2011
Сообщений: 65
01.12.2011, 16:52  [ТС]     Найти наибольшее среди средних арифметических значений строк матрицы #15
да, спасибо огромное)) мне это и надо)

Добавлено через 1 минуту
только объясните что такое tmp и **mas

Добавлено через 2 минуты
и еще, что это значит? mas=new int*[m]
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
01.12.2011, 16:54     Найти наибольшее среди средних арифметических значений строк матрицы #16
Цитата Сообщение от zttx Посмотреть сообщение
только объясните что такое tmp и **mas
tmp - переменная типа int , в данном коде используется для подсчета суммы элементов каждой строки.
**mas указатель на двумерный массив (имя двумерного массива). Если хотите про **mas узнать больше, то поищите про динамические двумерные массивы даже здесь на форуме.
zttx
1 / 1 / 0
Регистрация: 01.12.2011
Сообщений: 65
01.12.2011, 16:58  [ТС]     Найти наибольшее среди средних арифметических значений строк матрицы #17
а если мне динамический не нужен, то просто убрать ** и все?
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
01.12.2011, 17:37     Найти наибольшее среди средних арифметических значений строк матрицы #18
Цитата Сообщение от zttx Посмотреть сообщение
а если мне динамический не нужен, то просто убрать ** и все?
просто убрать ** и все - не получится. Можно например так:
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
#include <stdlib.h>
#include <iostream>
using namespace std;
#define N 100 // вот здесь задается предельное значение для n и m
int main()
{ 
        int i, j, max=0, tmp, mas[N][N], m, n;
        cout<<"m= ";
        cin>>m;
        cout<<"n= ";
        cin>>n;
        for(i=0; i<m; i++)
        {
                for(j=0; j<n; j++)
                {
                     mas[i][j]=rand()%10;
                }
        }
        cout<<"Matr:"<<endl;
        for(i=0; i<m; i++)
        {
                for(j=0; j<n; j++)
                        cout<<mas[i][j]<<" ";
                cout<<endl;
        }
        for(i=0; i<n; i++)
                max+=mas[0][i];
        for(i=1; i<m; i++)
        {
                tmp=0;
                for(j=0; j<n; j++)
                        tmp+=mas[i][j];
                if(tmp>max)
                        max=tmp;
        }
        cout<<"Max sredn-arifm: "<<(double)max/n<<endl;
     return 0;
}
и учтите что в данной программе нельзя n и m нельзя задавать значения больше чем 100
zttx
1 / 1 / 0
Регистрация: 01.12.2011
Сообщений: 65
02.12.2011, 15:19  [ТС]     Найти наибольшее среди средних арифметических значений строк матрицы #19
здравствуйте))) а можете еще помочь?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.12.2011, 23:01     Найти наибольшее среди средних арифметических значений строк матрицы
Еще ссылки по теме:

C++ Матрица m x n. Найти макс значение среди средних значений для каждой строки матрицы. Вернуть номер строки
C++ Сортировка строк матрицы в порядке возрастания их средних арифметических значений
C++ Найти наибольшее из значений элементов, расположенных в закрашенной части матрицы

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

Или воспользуйтесь поиском по форуму:
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
02.12.2011, 23:01     Найти наибольшее среди средних арифметических значений строк матрицы #20
Цитата Сообщение от zttx Посмотреть сообщение
здравствуйте))) а можете еще помочь?
не стесняйтесь, спрашивайте.
Yandex
Объявления
02.12.2011, 23:01     Найти наибольшее среди средних арифметических значений строк матрицы
Ответ Создать тему
Опции темы

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