|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
06.07.2011, 16:45 | #11 | |
Форумчанин
Регистрация: 01.07.2011
Сообщений: 423
|
Цитата:
Разберем по порядку ваш пример. Во-первых, вы даете название функции, совпадающее с названием стандартного алгоритма, чего, очевидно, делать не следует. Во-вторых, требуется, чтобы функция вызвращала значение, равное максимальному числу следующих в возрастающем порядке элементов. У вас же функция возвращает void. То есть ее объявление не соответсвует ее назначению. Далее, что еще хуже, у вас рассогласованность между типом первого параметра и типом третьего параметра для инстанцинирования третьего параметар. Всю информацию о типе элементов данных хранит в себе сам массив. То есть для того, чтобы использовать функционал greater, достаточно знать тип элемента массива. Далее, получить информацию о типе элементов массива и о типе расстояния между итераторами, лучше использовать стандартный метод, то есть использовать std::iterator_traits<T> Кстати сказать, в функции параметры следует определять в соответсвии с общепринятым для стандартных аргументов, то есть указывать начальный и конечный итератор. В своей функции вы используете итераторы произвольного доступа, тем самым резко сужаете возможность вашей функции, так как, например, для работы стандартного алгоритма std::adjacent_find на самом деле можно использовать последовательные итераторы. Далее вы просто не то делаете, что требуется. Код:
Со мной можно встретиться на www.clipper.borda.ru
|
|
06.07.2011, 17:54 | #12 |
Форумчанин
Регистрация: 14.12.2009
Сообщений: 716
|
Так просто, делать было нечего
#include <iostream> #include <time.h> Код:
// Поправил Последний раз редактировалось coNsept; 06.07.2011 в 19:38. |
06.07.2011, 18:05 | #13 |
Форумчанин
Регистрация: 01.07.2011
Сообщений: 423
|
coNseptб
У вас программа делает не то, что требуется, то есть она не ищет максимальную последовательность возрастающих элементов, а просто подсчитывает число возрастающих элементов в последовательности.
Со мной можно встретиться на www.clipper.borda.ru
|
06.07.2011, 19:58 | #14 |
C++, Java
Старожил
Регистрация: 10.04.2010
Сообщений: 2,665
|
Подозреваю, что там подразумевался int.
|
07.07.2011, 18:22 | #15 |
Форумчанин
Регистрация: 01.07.2011
Сообщений: 423
|
Вообще, если не писать собственные вспомогательные алгоритмы, то данная очень простая задача, как говорится, "не по зубам" стандартным алгоритмам! По крайней мере лично я не знаю, как ее решить только с помощью стандартных алгоритмов.
Если у кого есть какие-то возражения, то было бы интересно их услышать.
Со мной можно встретиться на www.clipper.borda.ru
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Задан вектор X[20]. Положительные числа переписать в массив Y, а отрицательные в массив W | leha_demi | Помощь студентам | 2 | 24.09.2011 18:12 |
Запись координат в массив в реал тайм, Как записать координаты в массив | Dark19 | Visual C++ | 2 | 21.06.2011 18:45 |
Из массив А получить массив В, удвоив все нечётные элементы удвоены ( на Pascal) | KARTER | Помощь студентам | 1 | 18.06.2011 19:58 |
Массив - Нужно написать массив и распечатать на экран с конца в начало(язык С++) | econ | Помощь студентам | 1 | 29.05.2011 22:02 |
Упорядочить массив в порядке возрастания и напечатать входной и исходный массив. | TheVenny | Помощь студентам | 3 | 26.11.2008 15:06 |