08.05.2011, 14:02 | #1 (permalink) |
Member
Регистрация: 26.03.2011
Сообщений: 25
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Объясните, пожалуйста, код
Дан типизированный файл stud.dat с информацией о студентах - записей: Код:
type ... bal=array [1..10] of real; TStud=record FIO: string [80]; Year: TDateTime; MedB: bal; Kurs: byte; Group: byte; end; fil = file of TStud; var f:fil; Код:
procedure TDelete.SpeedButton1Click(Sender: TObject); var k: byte; //удаление записи begin k := strtoint(edit1.Text); reset(f); seek(f, filesize(f) - 1); {1} read(f, s); {2} seek(f, k - 1); {3} write(f, s); {4} seek(f, filesize(f) - 1); {5} truncate(f); {6} closefile(f); displayall(MainForm.SGstud); Delete.close; end; Как я понимаю на примере: Например даны записи: 1 2 3 4 ; и k=2: {1} 1 2 3 _ 4 ,где "_" - это указатель {2} Читаем 3-ью запись {3} 1 _ 2 3 4 {4} 1 3 _ 3 4 {5} 1 3 3 _ 4 {6} 1 3 3 Я кажется что-то неправильно понимаю, объясните пожалуйста! |
08.05.2011, 14:02 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Ранее на форуме создавались темы, которые по содержанию схожи с вашим топиком Объясните код программы С++ Объясните про скорость в интернете Объясните про дроссели, пожалуйста. Объясните причину сообщения |
08.05.2011, 17:37 | #3 (permalink) |
一步一步地会到目的
Регистрация: 09.05.2009
Адрес: Черноземье
Сообщений: 10,939
Записей в дневнике: 10
Сказал(а) спасибо: 140
Поблагодарили 80 раз(а) в 33 сообщениях
Репутация: 28362
|
Неправильно понимате. Во второй операции читается именно последняя, четвертая запись, а не третья.
|
08.05.2011, 17:45 | #4 (permalink) |
Member
Регистрация: 26.03.2011
Сообщений: 25
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Точно) Но тогда они меняются местами получается 143
Действительно программа так и работает, но тогда получается неправильно. Буду исправлять. Спосибо большое!!! |
08.05.2011, 17:50 | #5 (permalink) |
一步一步地会到目的
Регистрация: 09.05.2009
Адрес: Черноземье
Сообщений: 10,939
Записей в дневнике: 10
Сказал(а) спасибо: 140
Поблагодарили 80 раз(а) в 33 сообщениях
Репутация: 28362
|
Да спасибо надо говорить, поймите вы наконец.
|
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
08.05.2011, 17:59 | #6 (permalink) |
Member
Регистрация: 26.03.2011
Сообщений: 25
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
А, ну да действительно
|
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
|
|