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

Шаблоны функции | C++ - C++

Восстановить пароль Регистрация
 
ham134
3 / 3 / 0
Регистрация: 22.10.2011
Сообщений: 81
03.07.2012, 12:41     Шаблоны функции | C++ #1
Помогите оформить каждый пункт задания в виде шаблона функции. Все необходимые данные для функции должны передаваться им в качестве параметров. Использование глобальных переменных в функциях не допускается.
1.
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
#include <iostream>
#include <math.h>
#include <conio.h>
using namespace std;
 
int main() 
  {
  setlocale (LC_ALL,"Rus");
 int n,i,j, МинЭлем, z, произведение, l, q;
 int Массив[8]={1,7,-12,-15,14,10,5,-17};
    произведение = 1;
    МинЭлем = 0;
    for (МинЭлем=i=0;i<8;i++)
         {
           if (Массив[i] > 0) произведение *= Массив[i];                         
           if (Массив[i] < Массив[МинЭлем]) МинЭлем = i;  
         }   
  cout << "Произведение положительных чисел будет равно "<< endl << endl << произведение << endl<< endl;    
     if (МинЭлем-1 > 0)
         {   
          for (i = 0,l = 0; i < МинЭлем; i++)
              l += Массив[i];
              cout << "Сумма до минимального элемента равно "<< endl << endl << l << endl<< endl
              <<"Упорядочение "
              << endl;
         }
  for (j=2;j<8;j+=2)
  for (i=2;i<8;i+=2)
   if (Массив[i]<Массив[i-2]){q=Массив[i-2];Массив[i-2]=Массив[i];Массив[i]=q;} // пузырьковая сортировка  элементов с четными индексами
  for (j=3;j<8;j+=2)
  for (i=3;i<8;i+=2)
   if (Массив[i]<Массив[i-2]){q=Массив[i-2];Массив[i-2]=Массив[i];Массив[i]=q;} // пузырьковая сортировка  элементов с нечетными индексами 
  for (i=0;i<8;i++)cout<<Массив[i]<<" "; cout<<endl;
      cout<< endl;
 _getch();
}
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
#include <iostream>
#include <conio.h>
 
#define N 5
#define M 6
 
int main()
{
    setlocale (LC_ALL,"rus");
    int A[N][M] =  { { 4, 5, 0,-1,-2, 9 },
                     { 0, 2, 4, 8,-6, 3 },
                     {-2, 5,-1,-7, 4, 2 },
                     { 3,-5,-9, 6,-2, 1 },
                     {-7,-5, 3,-2,-8, 0 } };
 
    for (int m1 = 0; m1 < N; m1++)
    {
        for (int m2 = 0; m2 < M; m2++)
            printf("%d ",A[m1][m2]);
            printf("\n");
    }
 
    int n = 0;
    for (int q1 = 0; q1 < N; q1++)
        for (int q2 = 0; q2 < M; q2++)
            if (!(A[q1][q2] != 0))
            {
                int count = 0;
                for (int p = count = 0; p < M; p++)
                    if (A[q1][p] < 0) count++;
                printf("Строка: %d Отрицательных элементов: %d\n",q1,count);
            }
_getch();
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.07.2012, 12:41     Шаблоны функции | C++
Посмотрите здесь:

C++ Шаблоны функции
C++ Функции-шаблоны
C++ Функции-шаблоны
C++ Функции-Шаблоны в С++
Шаблоны функции | C++ C++
Шаблоны функции C++
Шаблоны функции C++
C++ Перевести код из функции в шаблоны функции

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
softmob
1248 / 698 / 155
Регистрация: 20.02.2010
Сообщений: 1,035
03.07.2012, 13:57     Шаблоны функции | C++ #2
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
#include <iostream>
#include <locale>
using namespace std;
 
template <typename T, size_t N, size_t M>
void print(T (&v)[N][M])
{
    for (int i = 0; i != N; ++i)
    {
        for (int j = 0; j != M; ++j)
            cout << v[i][j] << ' ';
        cout << endl;
    }
}
 
template <typename T, size_t N, size_t M>
void negative(T (&v)[N][M])
{
    for (int i = 0; i != N; ++i)
    {
        bool f(false);
        int c(0);
        for (int j = 0; j != M; ++j)
            if (v[i][j] == 0)
                f = true;
            else if (v[i][j] < 0)
                ++c;
        if (f)      
            cout << "Строка: " << i + 1 <<
            " Отрицательных элементов: " << c << endl;      
    }
}
 
int main(void)
{
    setlocale(LC_ALL,"Russian");
    int v[5][6] = 
    {
        { 4, 5, 0,-1,-2, 9 },
        { 0, 2, 4, 8,-6, 3 },
        {-2, 5,-1,-7, 4, 2 },
        { 3,-5,-9, 6,-2, 1 },
        {-7,-5, 3,-2,-8, 0 } 
    };
    print(v);
    negative(v);
    return 0;
}
Yandex
Объявления
03.07.2012, 13:57     Шаблоны функции | C++
Ответ Создать тему
Опции темы

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