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

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

Восстановить пароль Регистрация
 
matornitskii
 Аватар для matornitskii
0 / 0 / 0
Регистрация: 03.05.2009
Сообщений: 94
16.01.2014, 10:02     шаблоны функций #1
Помогите пожалуйста с задачей:
Разработайте программу, в которой реализовано нахождение количества пар одинаковых по значению соседних элементов одномерного массива. используя шаблоны функций
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.01.2014, 10:02     шаблоны функций
Посмотрите здесь:

C++ Шаблоны функций
Шаблоны функций C++
C++ Шаблоны функций
C++ Шаблоны функций c++
C++ Шаблоны функций.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dzrkot
zzzZZZ...
 Аватар для dzrkot
516 / 346 / 53
Регистрация: 11.09.2013
Сообщений: 1,977
16.01.2014, 10:16     шаблоны функций #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
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
 
template <typename T>
void max(T *a,int size)
{
    int counter=0;
        for(int i=0;i<size-1;i++)
            if(a[i]==a[i+1])
            counter++;
    cout<<endl<<counter;
}
int main()
{
    srand(time(0));
const int size=20;
int a[size];
for(int i=0;i<size;i++)
    {
    a[i]=rand()%20;
    cout<<" "<<a[i];
    }
 
max(a,size);
return 0;
}
matornitskii
 Аватар для matornitskii
0 / 0 / 0
Регистрация: 03.05.2009
Сообщений: 94
16.01.2014, 10:22  [ТС]     шаблоны функций #3
Большое спасибо
egor2116
 Аватар для egor2116
337 / 368 / 42
Регистрация: 20.01.2013
Сообщений: 1,100
16.01.2014, 10:29     шаблоны функций #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
#include <iostream>
 
namespace array
{
  template< class T >
  bool eqauls(const T & left, const T & right)
  {
       return left == right;
  }
  
  template< class T >
  int getCountPair(T * arr, const size_t SIZE)
  {
      int count = 0;
      for(size_t i = 0; i < SIZE; ++i)
         if(eqauls(arr[i], arr[i + 1]) && i + 1 < SIZE)
            ++count;
      return count;
  }
}
 
int main()
{
  size_t SIZE = 0;
  std::cout << "Input size array : "; std::cin >> SIZE;
  int arr[SIZE];
  
  for(size_t i = 0; i < SIZE; ++i)
  {
    std::cout << "Input element : "; std::cin >> arr[i];
  }
  
  std::cout << "count pair : " << array::getCountPair(arr, SIZE) << std::endl;
     
  system("PAUSE");
  return 0;
}
Ev[G]eN
Эксперт С++
 Аватар для Ev[G]eN
5093 / 1531 / 381
Регистрация: 23.01.2011
Сообщений: 3,148
16.01.2014, 13:54     шаблоны функций #5
тоже предложу
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
#include <iostream>
#include <cstdlib>
#include <ctime>
 
template <class Iterator>
size_t maximalPairLength(Iterator first, Iterator last);
 
int main()
{
    std::srand((size_t)(std::time)(nullptr));
 
    size_t arraySize;
    std::cout << "N: ";
    std::cin >> arraySize;
 
    int *array = new int [arraySize];
    std::cout << "Array: " << std::endl;
    for (size_t i = 0; i < arraySize; i++) {
        std::cout << (*(array + i) = std::rand() % 5) << " ";
    }
    std::cout << std::endl << "Maximal length of pair: " << maximalPairLength(array, array + arraySize) << std::endl;
    
    delete [] array;
    std::system("pause");
    return 0;
}
 
template <class Iterator>
size_t maximalPairLength(Iterator first, Iterator last)
{
    size_t result(0);
    while (first != (last - 1)) {
        result += *first == *(first + 1) ? 1 : 0;
        first++;
    }
    return result;
}
matornitskii
 Аватар для matornitskii
0 / 0 / 0
Регистрация: 03.05.2009
Сообщений: 94
16.01.2014, 22:06  [ТС]     шаблоны функций #6
Спасибо большое но первый вариант найболее подходящий т.к. самый простой. а вариант Ev[G]eN случаем не с использованием шаблона класса ?
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11844 / 6823 / 771
Регистрация: 27.09.2012
Сообщений: 16,915
Записей в блоге: 2
Завершенные тесты: 1
16.01.2014, 22:12     шаблоны функций #7
Цитата Сообщение от matornitskii Посмотреть сообщение
случаем не с использованием шаблона класса ?
где?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.01.2014, 04:10     шаблоны функций
Еще ссылки по теме:

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

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

Или воспользуйтесь поиском по форуму:
matornitskii
 Аватар для matornitskii
0 / 0 / 0
Регистрация: 03.05.2009
Сообщений: 94
17.01.2014, 04:10  [ТС]     шаблоны функций #8
да нет уже разобрался
Yandex
Объявления
17.01.2014, 04:10     шаблоны функций
Ответ Создать тему
Опции темы

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