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

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

Войти
Регистрация
Восстановить пароль
 
Julia9311
3 / 3 / 0
Регистрация: 05.11.2011
Сообщений: 190
#1

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

30.06.2012, 21:56. Просмотров 279. Ответов 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
#include "iostream.h"
#include "conio.h"
 
int a[10][10];
int i=0, j=0, n=10, m=10, c=1;
 
int proizvedenie(int a[10][10], int n, int m, int i, int j)
{
bool flag;//флаг
int c=1;
    
            for(i=0;i<n;i++)
            for(j=0;j<m;j++)
            { if(a[i][j]<0)flag=false;
              if(a[i][j]>0) flag=true;  
                c*=a[i][j];
            }
    cout << "Proizvedenie= " <<c<< endl;
    return c;
}
int main()
{
    int *p;
    p=new int[n*m];
 
   cout<<"Vvedite elementi massiva\n";
 
    for(i=0; i<n; i++)
    {
        for(j=0; j<m; j++)
        {
            cout<<"a["<<i<<"]["<<j<<"]= ";
            cin>>a[i][j];
        }
    }
 
    getch();
        
    return 0;
}


и в виде шаблона функции


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
#include "iostream.h"
#include "conio.h"
 
int a[10][10];
int i=0, j=0, n=10, m=10, c=1;
    
template< typename T > 
T proizvedenie(T a[10][10], int n, int m, int i, int j)
{
bool flag;//флаг
int c=1;
    
            for(i=0;i<n;i++)
            for(j=0;j<m;j++)
            { if(a[i][j]<0)flag=false;
              if(a[i][j]>0) flag=true;  
                c*=a[i][j];
            }
    cout << "Proizvedenie= " <<c<< endl;
    return c;
}
int main()
{
    int *p;
    p=new int[n*m];
 
   cout<<"Vvedite elementi massiva\n";
 
    for(i=0; i<n; i++)
    {
        for(j=0; j<m; j++)
        {
            cout<<"a["<<i<<"]["<<j<<"]= ";
            cin>>a[i][j];
        }
    }
 
    getch();
        
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.06.2012, 21:56     Шаблоны функции
Посмотрите здесь:

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

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Schizorb
508 / 460 / 16
Регистрация: 07.04.2012
Сообщений: 865
Записей в блоге: 1
Завершенные тесты: 1
30.06.2012, 22:08     Шаблоны функции #2
C++
1
T c=1; // 12 строка
MrGluck
Ворчун
Эксперт CЭксперт С++
6627 / 3818 / 500
Регистрация: 29.11.2010
Сообщений: 10,072
30.06.2012, 22:23     Шаблоны функции #3
1. Хедеры править
C++
1
2
#include <iostream.>
#include <conio.h>
2. Глобальные переменные убрать, они не нужны
3. int i, int j ненужные параметры
4. p=new int[n*m]; а где память освобождаете?
5. используйте двумерный массив, а не n*m.
6. cout в функции вобще не нужен
7. Зачем вам флаг вобще?
ну и т.д.
Yandex
Объявления
30.06.2012, 22:23     Шаблоны функции
Ответ Создать тему
Опции темы

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