![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 03.01.2010
Сообщений: 2
|
![]()
Задача: найти в файле типа integer кол-во серий повторяющихся эл-тов.
Т.е. как я понимаю, он должен брать 2 числа, сравнивать, увеличивать кол-во серий если они равны и не переходить к следующему увеличению пока последующие символы также равны этому, т.е. длится одна серия. По видимому, код не работает уже при побайтовом чтении, помогите, плз Код:
Тут проблема не в алгоритме, а в том, что я даже если вывожу элемент i куда нибудь, он мне выводит 859059252 с k также. Переменная kolvo нулевая. Может я неправильно по символам читаю? |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]()
сразу могу сказать,
алгоритм имеет гарантированную ошибку! когда Вы внутри цикла крутите ещё один цикл чтения: Код:
да и read(f,i); //читаем 1й символ тоже даст ошибку, если файл пуст! p.s. я уже молчу о том, что если файл открыли, то его очень желательно закрыть через CloseFile(f); вот решение: (вроде бы всё понятно ![]() Код:
Последний раз редактировалось Serge_Bliznykov; 04.01.2010 в 09:29. |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Типизированные файлы | qwertytol | Помощь студентам | 2 | 02.06.2009 08:44 |
Типизированные файлы | Ddr | Общие вопросы Delphi | 11 | 27.04.2009 20:38 |
Delphi. Типизированные/нетипизированные Файлы. | dzhI | Общие вопросы Delphi | 7 | 11.02.2009 12:18 |
Типизированные файлы и Delphi | Polina | Помощь студентам | 8 | 12.12.2007 18:40 |