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

Функция для подсчета суммы и количества элементов больше K - C++

Восстановить пароль Регистрация
 
tanya_owl
0 / 0 / 0
Регистрация: 14.11.2013
Сообщений: 17
21.01.2014, 20:06     Функция для подсчета суммы и количества элементов больше K #1
Добрый вечер!
Есть задачка одна - звучит так:
С помощью генератора случайных чисел сформировать квадратную матрицу вещественных чисел размерности m x m, где значение m <=7 вводится с клавиатуры. Диапазон формируемых в матрице значений от –10 до +10. Написать программу, в которой предусмотреть подсчет в каждом столбце количества и сумму элементов, величина которых больше k, вводимого с клавиатуры. В результате на экран вывести сформированную матрицу, значения количества и суммы элементов с номерами соответствующих столбцов.
Подсчет в столбце значения количества и суммы элементов, величина которых больше k, оформить в виде функции.
Я как бы ее почти решила, но подсчет происходит без функции, помогите, пожалуйста, сделать функцию.
А то я что-то запуталась, сильно(((
Вот код программы:
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
#include <iostream>
# include <time.h>      
using namespace std;
int m;
int sum;
int main()
{ 
srand (( unsigned) time(NULL));
 
do {    cout << "Vvedite kolichestvo elementov massiva:";  cin >> m;
if (m<1 || m >7) cout << "Kolishestvo vvedeno NEVERNO!!!" << endl; }
while (!(m>0 && m<=7));
int **a=new int *[m]; //sozd mas ykaz
for (int i=0;i<m;i++)
{
a[i]=new int [m];//sozd elt
 
}
for (int i = 0; i < m; i++)
{ 
for (int j = 0; j < m; j++)
{ 
int maxzn=10;
int minzn=-10;
a[i][j]=rand()%(maxzn-minzn+1)+minzn;
cout<<a[i][j]<<"";
}
cout<<endl;
}
int k=0;
int kol=0;
cout<< "vvedite K"; cin>>k;
 
for(int j=0; j<m; j++)//sum
     {
         sum=0;
         for(int i=0; i<m; i++)
         { if (a[i][j]>k)
             sum+=a[i][j];
             
         }
      cout<<"v "<<j+1<<" stolbike sum el-tov>k= "<<sum<<endl;
       
     }
for(int j=0; j<m; j++)//kol
     {
         kol=0;
         for(int i=0; i<m; i++)
         { if (a[i][j]>k)
             ++kol;
             
         }
       cout<<"v "<<j+1<<"kol el-tov="<<kol<<endl;
       
     }
system("pause");
return 0;
}

Спасибо!!!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.01.2014, 20:06     Функция для подсчета суммы и количества элементов больше K
Посмотрите здесь:

Составить программу для подсчета суммы положительных элементов квадратного массива Х C++
Функция подсчета количества символов C++
Подсчет количества элементов ,больше суммы предшествующих в одномерном массиве C++
C++ Многомерные массивы. Поиск количества тех элементов матрицы,которые больше суммы остальных элементов своего столбца
Программа и функция для подсчета количества элементов вектора, десятичная запись которых содержит не менее двух нулей C++
Составить программу для подсчета количества четных, нечетных и нулевых элементов матрицы C++
Написать программу для подсчета количества одинаковых цифр в массиве из 5-ти элементов C++
C++ Функция подсчета количества нулевых элементов массива

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
S_el
1906 / 1501 / 295
Регистрация: 15.12.2013
Сообщений: 5,915
21.01.2014, 20:37     Функция для подсчета суммы и количества элементов больше K #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
# include <iostream>
# include <time.h>
using namespace std;
int return_sum(int** arr,const int &n,const int &j,const int &k);
int return_kol(int** arr,const int &n,const int &j,const int &k);
int main()
{
int m,sum,max=10,min=-10,k,s4;
 
srand(time(NULL));
 
do { cout << "Vvedite razmernostb ot 1 do 7:"<<endl; cin>>m;
if (m<1 || m >7) cout << "Kolishestvo vvedeno NEVERNO!!!" << endl; }
while (!(m>0 && m<=7));
 
int **a=new int *[m]; 
for (int i=0;i<m;i++)
{
a[i]=new int [m];
}
 
for (int i = 0; i < m; i++)
{
for (int j = 0; j < m; j++)
{
a[i][j]=min +(max-min)*(rand())/RAND_MAX;
cout<<a[i][j]<<" ";
}
cout<<endl;
}
 
cout<< "vvedite K"<<endl;
cin>>k;
 
for(int j=0; j<m; j++)
{
sum=return_sum(a,m,j,k);
s4=return_kol(a,m,j,k);
cout<<" v "<<j<<" stolbce summa elementov > "<<k<<" = "<<sum<<" kol-vo " <<s4<<endl;
}
cin.get();
cin.get();
return 0;
}
 
 
int return_sum(int** arr,const int &n,const int &j,const int &k)
{
    int sum=0;
    for(int i=0;i<n;i++)
        if(arr[i][j]>k) sum=sum+arr[i][j];
        return sum;
}
int return_kol(int** arr,const int &n,const int &j,const int &k)
{
        int kol=0;
    for(int i=0;i<n;i++)
        if(arr[i][j]>k) kol++;
        return kol;
}
Yandex
Объявления
21.01.2014, 20:37     Функция для подсчета суммы и количества элементов больше K
Ответ Создать тему
Опции темы

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