1. Заголовок темы должен быть информативным. В противном случае тема удаляется ... 2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения. 3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали! 4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора). 5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM! 6. Одна тема - один вопрос (задача) 7.Проверяйте программы перед тем, как разместить их на форуме!!! 8.Спрашивайте и отвечайте четко и по существу!!!
Помогите разобраться с задачей на файлы. В файле хранятся фамилии, название клубов, за которые играют хоккеисты, количество сыгранных игр и заброшенных шайб. Перепишите в разные файлы данные об игроках «Спартака» и «Динамо». И подскажите пожалуйста какую ни будь книгу по паскалю, где подробно разбирается этот вопрос Заранее благодарен..
--------------------
Бывает в жизни так хреново Что даже чай не лезит в глотку А лезит в глотку только пиво Которым запиваеш водку
1. что за файл (типизированный\нетипизированный) 2. структура записей в файле. (если тектсовый, то как расположенны строчки, если типизированный, то какова структура recorda)
--------------------
Помогая друг другу, мы справимся с любыми трудностями! "Не опускать крылья!" (С)
procedure createFile(var f: FPlayer; name: string); begin assign(f, name); {$I-} rewrite(f); {$I+} if IOResult <> 0 then begin writeln( 'cannot create new file...' ); halt(100) end;
end;
{ Проверяет правильность заполнения файла с именем name } procedure viewFile(name: string); var f: FPlayer; begin assign(f, filename); {$I-} reset(f); {$I+} if IOResult <> 0 then begin writeln( 'cannot open file...' ); halt(101) end;
while not eof(f) do begin read(f, rec); with rec do writeln( name, ' ', club, ' ', games:4, ' ', scores:4 ); end;
close(f); end;
{ создает файл COMMON.INF с начальными данными - старый файл с именем COMMON.INF будет уничтожен } procedure initFile; var f: FPlayer; r: TPlayer; ans: char; begin createFile(f, filename); repeat write('name:> '); readln(r.name); write('club:> '); readln(r.club); write('games:> '); readln(r.games); write('scores:> '); readln(r.scores); write(f, r); writeln; writeln('another player ? (y/n)'); readln(ans); until (upcase(ans) <> 'Y'); close(f) end;
var f, fD, fS: FPlayer; rec: TPlayer; begin initFile;
assign(f, filename); {$I-} reset(f); {$I+} if IOResult <> 0 then begin writeln( 'cannot open file...' ); halt(101) end;
createFile(fD, dinamo); createFile(fS, spartak);
while not eof(f) do begin read(f, rec); if rec.club = 'spartak' then write(fS, rec) else write(fD, rec); end;
close(fS); close(fD); close(f);
{ для проверки правильности создания файла... } viewFile( 'spartak.inf' ); { или 'dinamo.inf' }
procedure viewFile(name: string); var f: FPlayer; begin assign(f, filename); {$I-} reset(f); {$I+} if IOResult <> 0 then begin writeln( 'cannot open file...' ); halt(101) end;
while not eof(f) do begin read(f, rec); with rec do writeln( name, ' ', club, ' ', games:4, ' ', scores:4 ); end;
close(f); end;
begin viewFile( 'spartak.inf' ); { или 'dinamo.inf' } end.