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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 47, средняя оценка - 4.72
Иринка
0 / 0 / 0
Регистрация: 21.04.2009
Сообщений: 44
#1

Процедуры и функции. - C++

24.05.2009, 19:55. Просмотров 5666. Ответов 3
Метки нет (Все метки)

1) Разработав подпрограмму определения количества нулевых элементов матрицы, вычислить его для матрицы А(КхМ)
К=5, М=3. А={{-2 4 3}{5 0 3}{-3 -1 2}{4 2 -1}{0 5 -5}}

2) Используя подпрограмму нахождения максимального элемента матрицы и его индексов, найти их для матрицы А(КхМ)
К=5, М=3. А={{-2 4 3}{5 0 3}{-3 -1 2}{4 2 -1}{0 5 -5}}

3) Разработать подпрограмму нахождения среднего арифметического элементов одномерного массива, вычислить его для массива А{-5 -3 0 1 2 7 10 12 30 100}

ЗАРАНЕЕ ОГРОМНОЕ СПАСИБО!!!
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.05.2009, 19:55     Процедуры и функции.
Посмотрите здесь:

C++ Процедуры и функции
процедуры и функции C++
C++ Функции и процедуры!
C++ Процедуры и функции.
C++ Процедуры. Процедуры-функции
процедуры и функции C++
Процедуры и функции C++
Процедуры и функции C++
C++ Процедуры /функции
C++ процедуры/функции
C++ Подпрограммы-процедуры и процедуры-функции
Функции и процедуры C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
kazak
3032 / 2353 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
25.05.2009, 11:15     Процедуры и функции. #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
84
85
86
87
#include <iostream.h>
//---------------------------------------------------------------------------
const int rowSize = 5;
const int columnSize = 3;
const int size = 10;
 
int CountOfZero(int [][columnSize], int);
int Maximum(int [][columnSize], int, int &, int &);
float Average(int [], int);
 
int main(int argc, char* argv[])
{
   int a1[rowSize][columnSize] = {
                                {-2, 4, 3},
                                {5, 0, 3},
                                {-3, -1, 2},
                                {4, 2, -1},
                                {0, 5, -5}};
   int a2[size] = { -5, -3, 0, 1, 2, 7, 10, 12, 30, 100};
   int max = 0;
   int rowIndexMax = 0;
   int columnIndexMax = 0;
   int numOfZero = 0;
   float aver = 0;
 
   max = Maximum(a1, rowSize, rowIndexMax, columnIndexMax);
   numOfZero = CountOfZero(a1, rowSize);
   aver = Average(a2, size);
   cout << "Kolichestvo nulei v massive a1: " << numOfZero << endl;
   cout << "Maksimal'nyi element v massive a1: " << max << endl;
   cout << "Ego indeks: " << rowIndexMax << ", " << columnIndexMax << endl;
   cout << "Srednee arifmeticheskoe massiva a2: " << aver << endl;
 
   system("pause");
   return 0;
}
//---------------------------------------------------------------------------
int CountOfZero(int array[][columnSize], int rowSize)
{
   int count = 0;
 
   for (int i = 0; i < rowSize; i++)
   {
      for (int j = 0; j < columnSize; j++)
      {
         if (array[i][j] == 0)
         {
            count++;
         }
      }
   }
 
   return count;
}
 
int Maximum(int array[][columnSize], int rowSize, int &rwIndex, int &clIndex)
{
   int max = array[0][0];
 
   for (int i = 0; i < rowSize; i++)
   {
      for (int j = 0; j < columnSize; j++)
      {
         if (array[i][j] > max)
         {
            max = array[i][j];
            rwIndex = i;
            clIndex = j;
         }
      }
   }
 
   return max;
}
 
float Average(int array[], int size)
{
   float aver = 0;
 
   for (int i = 0; i < size; i++)
   {
      aver += array[i];
   }
   aver /= size;
 
   return aver;
}
Иринка
0 / 0 / 0
Регистрация: 21.04.2009
Сообщений: 44
25.05.2009, 21:49  [ТС]     Процедуры и функции. #3
Классненько, все в одной программе
А можно с комментариями, и правда это были задания к трем разным задачам
Но все равно спасибки огромнейшее!!!
kazak
3032 / 2353 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
26.05.2009, 04:09     Процедуры и функции. #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
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
// Функция CountOfZero вычисляет количество нулевых элементов в двумерном массиве.
// Принимает два аргумента: двумерный массив array имеющий тип int,
// и количество строк в массиве rowSize.
// Количество столбцов должно задаваться непосредственно в прототипе функции
// числом или именованной константой, в данном случае используется именованная
// константа columnSize.
int CountOfZero(int array[][columnSize], int rowSize)
{
   int count = 0; // Объявляем счетчик, который будет содержать количество
                  // нулей и инициализируем нулем.
 
   for (int i = 0; i < rowSize; i++)         // В каждой строке массива
   {
      for (int j = 0; j < columnSize; j++)   // перебираем каждый эелемент
      {
         if (array[i][j] == 0)               // и сравниваем с нулем.
         {
            count++;                         // Если элемент равен нулю,
         }                                   // увеличиваем счетчик на 1.
      }
   }
 
   return count;  // Возвращаем счетчик.
}
 
// Функция Maximum находит макслимальный элемент и его расположение
// в двумерном массиве.
// Принимает четыре аргумента:
// 1. Двумерный массив array имеющий тип int;
// 2. Количество строк в массиве rowSize(количество столбцов аналогично CountOfZero);
// 3. Ссылку на переменную rwIndex, в которую будет записан номер строки с максимальным элементом;
// 4. Ссылку на переменную clIndex, в которую будет записан номер столбца с максимальным элементом.
int Maximum(int array[][columnSize], int rowSize, int &rwIndex, int &clIndex)
{
   int max = array[0][0];  // Объявляем переменную, которая будет хранить
                           // максимальный элемент и присваиваем значение первого
                           // элемента массива.
 
   for (int i = 0; i < rowSize; i++)         // В каждой строке массива
   {
      for (int j = 0; j < columnSize; j++)   // пребираем каждый элемент
      {
         if (array[i][j] > max)              // и сравниваем с max.
         {
            max = array[i][j];   // Если элемент больше max, то присваиваем
            rwIndex = i;         // max, rwIndex, clIndex новые значения.
            clIndex = j;
         }
      }
   }
 
   return max; // Возвращаем максимальный элемент.
}
 
// Функция Average вычисляет среднее арифметическое одномерного массива.
// Принимает два аргумента: одномерный массив array имеющий тип int и его размер size.
float Average(int array[], int size)
{
   float aver = 0;   // Объяляем переменную для вычисленя сред.арифм.
                     // и инициализируем нулем.
   for (int i = 0; i < size; i++)
   {
      aver += array[i];    // Складываем каждый элемент массива с aver.
   }
   aver /= size;  // Делим получившуюся сумму на количество элементов в массиве
 
   return aver;   // Возврвщаем сред.арефм.
}
Yandex
Объявления
26.05.2009, 04:09     Процедуры и функции.
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru