| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Для новичков > Помогите исправить код |
| Автор: Truegirl 13.12.2008, 17:13 | ||
| Уважаемые программисты, очень срочно надо исправить код, но я не пойму почему он неправельно работает. Вот задание Найти наибольшую последовательность в массиве, и вывести ее произведение.(под последовательностью подразумевается одинаковые числа, например 123455555567696, 555555- это последовательность) Код выводит наибольшую последовательность, но когда надо подсчитать произведение, он выводит какой-то бред. Заранее спасибо
|
| Автор: 2p0i 13.12.2008, 17:22 |
| Первое, что бросается в глаза - у вас в цикле i меняется от 0 до n-1, и вы сравниваете i-й элемент с (i+1)-м, но для i=n-1 будет сравнение с несуществующим элементов. Насколько я разобрался в логике, в max должна записываться длина, а в m - позиция последнего элемента последовательности. Почему тогда вы берете произведение элементов от m до n-1, а не от m-max+1 до m? |
| Автор: Lazin 13.12.2008, 17:38 | ||
как-то так |
| Автор: Truegirl 13.12.2008, 23:29 |
| Все равно не получается, выводит неправельное произведение. Если я не ошибаюсь, то должно выводиться элемент массива в степени кол-ва элементов? А выводиться вообще непонятное значение. HELP ME PLEASE |