![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 06.12.2009
Сообщений: 380
|
![]()
Создать файл F, заполненный целыми числами из диапазона [1,20].
Удалить из файла F повторяющиеся включения одного и того же числа. ПРИМЕР: 10 13 2 5 6 7 6 9 10 2 13 2 5 6 7 9 Вот моя неработающая прога!! program lab; var f:file of integer; i,j,a,b,c,d,e,r,h,y:integer; begin Assign (f,'lab3.dat'); rewrite (f); writeln ('vvedite kol-vo elementov v faile'); readln (a); randomize; for i:=0 to a-1 do begin h:=random(20); write (f,h); end; seek (f,0); while not eof(f) do begin read (f,h); write (h,' '); end; for i:=0 to a-2 do begin seek (f,i); read (f,b); for r:=i+1 to a-1 do begin seek (f,r); read (f,b); if r=b then begin seek(f,r+1); read(f,d); seek(f,filepos(f)-1); write (f,d); for j:=filepos(f) to a-1 do begin seek (f,filepos(f)+1); read (f,e); seek (f,filepos(f)-2); write (f,e); end; end; Происходит вылет за пределы файла!!! Не знаю что и делать, помогите пожалуйста!!! Заранее премного благодарен. |
![]() |
![]() |
![]() |
#2 |
***
Участник клуба
Регистрация: 30.07.2007
Сообщений: 1,162
|
![]()
Похожее задание на последней странице я привёл код.
p.s.: да и для оформления кода нужно использовать тег [CODE] |
![]() |
![]() |
![]() |
#3 | |
Форумчанин
Регистрация: 06.12.2009
Сообщений: 380
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#4 | |
Форумчанин
Регистрация: 06.12.2009
Сообщений: 380
|
![]() Цитата:
Похожа только тем, что тоже с файлами!! ___________________________________ ____ Мне дополнительные файлы использовать нельзя!! Проблема у меня состоит в том, что когда идет сравнение файловых переменных у меня происходит вылет за пределы файла!! Например, когда я прочитываю последнюю переменную, read(f,e); курсор идет на следующую, ну само собой вылет за пределы. ![]() ![]() ![]() |
|
![]() |
![]() |
![]() |
#5 |
***
Участник клуба
Регистрация: 30.07.2007
Сообщений: 1,162
|
![]()
Задания очень похожи. Т.е. вам надо заново перезаписать файл, для этого вы сначала считываете от туда данные, можно во время считывания проверять на наличие повторений и формируете например массив, а потом перезаписываете вашь файл данными из массива.
|
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 06.12.2009
Сообщений: 380
|
![]()
подскажите как сравнивать и удалять одинаковые.
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Работа с файлами в Паскале | Litrian | Помощь студентам | 5 | 01.12.2009 16:44 |
Работа с файлами в Паскале! | d00ker | Помощь студентам | 5 | 12.03.2009 11:24 |