IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> ТИПИЗИРОВАННЫЕ ФАЙЛЫ - нужна помощь..., ТИПИЗИРОВАННЫЕ ФАЙЛЫ - нужна помощь...
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 24
Пол: Мужской

Репутация: -  0  +


Если кому несложно - помогите...
а вот и сама задача:
Цитата
Постановка задачи
Подготовить данные об абитуриентах, поступающих в техникум. Информацию о каждом абитуриенте оформить в виде записи, содержащей следующие поля:





  1. Фамилия, имя, отчество.



  2. Год рождения.



  3. Год окончания школы.



  4. Оценки в аттестате.



  5. Признак - нуждается ли в общежитии.



  6. Оценки вступительных экзаменов.



Разработать программу записи подготовленных данных во внешний файл и программу обработки созданного внешнего файла.





  1. Удалить из внешнего файла все записи, удовлетворяющие условию, заданному в варианте, и распечатать информацию, оставшуюся в файле.



  2. Добавить N записей в начало (конец) внешнего файла и распечатать записи полученного файла согласно конкретному варианту.



Методические указания





  1. При подготовке исходных данных необходимо учесть, что выходная информация программы обработки внешнего файла должна составлять не менее одной четверти от входной.



Варианты задания

I. Из внешнего файла, содержащего исходные данные, удалить записи, соответствующие:
3. Абитуриентам, имеющим средний балл меньше 4 и хотя бы одну оценку 3 в аттестате.Распечатать полученный файл.
П. Используя внешний файл, содержащий исходные данные, добавить N записей и распечатать:
3. Список абитуриентов, имеющих средний балл больше 4,5; N=4.


--------------------
Я не люблю, когда мне лезут в душу,
Тем более, когда в нее плюют...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Новичок
*

Группа: Пользователи
Сообщений: 24
Пол: Мужской

Репутация: -  0  +


Вот что я пока осилил:
uses crt;
type ABIT=record
FIO:string[30];
GODROG:integer;
GODOKON:integer;
AT_MAT:integer;
AT_RUS:integer;
AT_FIZ:integer;
OBSHAGA:char;
AB_MAT:integer;
AB_RUS:integer;
AB_FIZ:integer;
end;
var F:file of ABIT;
S:ABIT;
ch:char;
I:integer;
key1,key2:boolean;
begin
clrscr;
I:=1;
assign(F,'abitura.dat');
rewrite(F);
repeat
with S do
begin
writeln;
writeln('-------------------------------------------------------');
writeln('Vvedite dannie o ',I,'-m abituriente:');
writeln('-------------------------------------------------------');
writeln('Vvedite FIO:');
readln(FIO);write(F,FIO);
writeln('Vvedite god rogdeniya:');
readln(GODROG);writeln(F,GODROG);
writeln('Vvedite god okonchaniya shkoli:');
readln(GODOKON);writeln(F,GODOKON);
writeln;
writeln('Vvedite ozenki attestata:');
writeln('Matematika:')
readln(AT_MAT);writeln(F,AT_MAT);
writeln('Russkiy yazik:');
readln(AT_RUS);writeln(F,AT_RUS);
writeln('Fizika:');
readln(AT_FIZ);writeln(F,AT_FIZ);
writeln;
writeln('Vvedite ozenki vstupitelnih ekzamenov:');
writeln('Matematika:')
readln(AB_MAT);writeln(F,AB_MAT);
writeln('Russkiy yazik:');
readln(AB_RUS);writeln(F,AB_RUS);
writeln('Fizika:');
readln(AB_FIZ);writeln(F,AB_FIZ);
end;
repeat
key1:=false;key2:=false;
writeln('Prodolgit? [Y/N]');
readln(ch);
if (ch:='N') or (ch:='n') then
begin
key1:=true;
key2:=true;
end;
if (ch:='Y') or (ch:='y') then key2:=true;
until key2;
until key1;
end.

проблема в синтаксисе - где-то я не так что-то написал...
помогите найти ошибку...

Добавлено позже:
Если кому надо, то выкладываю похожую задачу (единствнное существенное отличие - организация данных не через файл, а через массив записей):

сама задача:
Цитата
Постановка задачи
Составить список учебной группы, включающей 25 человек. Для каждого учащегося указать дату рождения, год поступления в техникум, курс, группу, оценки каждого года обучения. Информацию о каждом учащемся оформить в программе в виде записи. Совокупность записей объединить в массив.
Составить программу, которая обеспечивает ввод полученной информации, распечатку ее в виде таблицы, а также распечатку информации согласно конкретному варианту.
Варианты задания
9. Распечатать оценки в последнюю сессию студентов, фамилии которых начинаются с букв В и Г.


и решение: (Показать/Скрыть)



--------------------
Я не люблю, когда мне лезут в душу,
Тем более, когда в нее плюют...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Гость






LLIRIKS
Цитата
проблема в синтаксисе

Ни в коем случае... Проблема в логике - файл F описан как файл с элементами типа
ABIT, поэтому в него нельзя писать числа и строки. Решение - сначала заполняй переменную S полностью, а уж потом пиши ее в файл...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Новичок
*

Группа: Пользователи
Сообщений: 24
Пол: Мужской

Репутация: -  0  +


Цитата(volvo @ 18.12.04 17:51)
Решение - сначала заполняй переменную S полностью, а уж потом пиши ее в файл...

спасибо! все пошло!
запись в файл организовал...


--------------------
Я не люблю, когда мне лезут в душу,
Тем более, когда в нее плюют...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Новичок
*

Группа: Пользователи
Сообщений: 24
Пол: Мужской

Репутация: -  0  +


еще вопрос: как удалить запись из типизированного файла?
Код

{-------------------------------OBRABOTKA_FAILA_1---------------------------}
 reset(F);
 clrscr;
 while (not EOF(F)) do
   begin
     read(F,S);
     with S do
       if ((AB_MAT+AB_RUS+AB_FIZ)/3<4) and ((AT_MAT=3) or (AT_RUS=3)
       or (AT_FIZ=3)) then [здесь надо бы удалить запись...];
   end;
 close(F);

и вообще кому несложно посмотрите, правильно ли я организовал обработку?
спасибо заранее...


--------------------
Я не люблю, когда мне лезут в душу,
Тем более, когда в нее плюют...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Пионер
**

Группа: Пользователи
Сообщений: 98
Пол: Мужской

Репутация: -  0  +


Цитата
как удалить запись из типизированного файла?

на сколько я знаю надо что-то вроде этого:
  • переименовать файл {first.dat в s.dat}
  • Переписать в новый файл со старым именем{first.dat} все записи кроме удаленной
  • удалить файл(переименованый){s.dat}
хотя должен быть более рациональный способ

Сообщение отредактировано: murphy -


--------------------
collect the infotrons and find Exit
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Пионер
**

Группа: Пользователи
Сообщений: 98
Пол: Мужской

Репутация: -  0  +


Для твоего случая очевидно легче переписать в новый файл записи
для
Код

not(((AB_MAT+AB_RUS+AB_FIZ)/3<4) and ((AT_MAT=3) or (AT_RUS=3) or AT_FIZ=3)))


--------------------
collect the infotrons and find Exit
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Гость






LLIRIKS
Можно, как посоветовал murphy, можно по-другому:
1. Определяешь, сколько записей осталось от текущей позиции в файле до его конца;
2. Выделяешь с помощью GetMem динамическую память, достаточную для размещения в ней тех записей, которые нужно сохранить, и заносишь эти записи в дин. память;
3. Обрезаешь файл на текущей позиции (Truncate), при этом ненужная запись тоже удаляется;
4. Из дин. памяти записываешь сохраненные данные назад в файл, и освобождаешь память (FreeMem)

Выбирай ;)
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Пионер
**

Группа: Пользователи
Сообщений: 98
Пол: Мужской

Репутация: -  0  +


Можно еще в массиве или еще где-нибудь отметить те номера записей которые надо удалить. А потом одним проходом по файлу все записи кроме этих перенестив др. файл...

Так рациональнее чем первое что я предложил.


--------------------
collect the infotrons and find Exit
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10


Новичок
*

Группа: Пользователи
Сообщений: 24
Пол: Мужской

Репутация: -  0  +


фуф....
хе-хе-хе...
Я ЭТО СДЕЛАЛ!
не дай бог кому такого (если, конечно, не программеры, как будущий я (если не вылечу...) ... а допустим студенты с какого-нибудь филфакаsmile.gif )...
Вот оно твореньице: (Показать/Скрыть)

если у меня есть какие-нибудь ошибки, то плиз, скажите где чего не так...
буду безумно счастлив каждой найденной ошибке...


--------------------
Я не люблю, когда мне лезут в душу,
Тем более, когда в нее плюют...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #11


Гость






LLIRIKS

repeat
 key1:=false;
 writeln('Nugdaetsya v obshage? [Y/N]');
 readln(OBSHAGA);
 if (OBSHAGA in ['Y','y','N','n']) then key1:=true;
until key1;


я бы поменял на:

repeat
 writeln('Nugdaetsya v obshage? [Y/N]');
 readln(OBSHAGA);
until (UpCase(OBSHAGA) in ['Y','N']);


и т.д. rolleyes.gif
 К началу страницы 
+ Ответить 
сообщение
Сообщение #12


Новичок
*

Группа: Пользователи
Сообщений: 24
Пол: Мужской

Репутация: -  0  +


Да, действительно...
fanks!


--------------------
Я не люблю, когда мне лезут в душу,
Тем более, когда в нее плюют...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #13





Группа: Пользователи
Сообщений: 4
Пол: Мужской

Репутация: -  0  +


Прошу помощи. Условие задачи тоже...только нужно за место этого:

Цитата
Варианты задания

I. Из внешнего файла, содержащего исходные данные, удалить записи, соответствующие:
3. Абитуриентам, имеющим средний балл меньше 4 и хотя бы одну оценку 3 в аттестате.Распечатать полученный файл.
II. Используя внешний файл, содержащий исходные данные, добавить N записей и распечатать:
3. Список абитуриентов, имеющих средний балл больше 4,5; N=4.


Сделать следующее:

1.Абитуриентам старше восемнадцати лет.
2.Список абитуриентов, нуждающихся в общежитии; N=3.

Попробовав пример приведенный выше и подкорректировав кое что у меня вышло следующее:

uses crt;
type ABIT=record
FIO:string[30];
GODROG:integer;
GODOKON:integer;
AT_MAT:integer;
AT_RUS:integer;
AT_FIZ:integer;
OBSHAGA:char;
AB_MAT:integer;
AB_RUS:integer;
AB_FIZ:integer;
end;
const N=3;
var F,F1:file of ABIT;
S:ABIT;
ch:char;
I,K:integer;
key1,key2:boolean;
begin
{#################################-VVOD_DANNIH-#############################}
I:=1;
assign(F,'abitura.dat');
rewrite(F);
repeat
with S do
begin
clrscr;
writeln;
writeln('-------------------------------------------------------');
writeln('Vvedite dannie o ',I,'-m abituriente:');
writeln('-------------------------------------------------------');
writeln('Vvedite FIO:');
readln(FIO);
writeln('Vvedite god rogdeniya:');
readln(GODROG);
writeln('Vvedite god okonchaniya shkoli:');
readln(GODOKON);
writeln;
writeln('Vvedite ozenki attestata:');
writeln('Matematika:');
readln(AT_MAT);
writeln('Russkiy yazik:');
readln(AT_RUS);
writeln('Fizika:');
readln(AT_FIZ);
writeln;
repeat
key1:=false;
writeln('Nugdaetsya v obshage? [Y/N]');
readln(OBSHAGA);
if (OBSHAGA in ['Y','y','N','n']) then key1:=true;
until key1;
writeln;
writeln('Vvedite ozenki vstupitelnih ekzamenov:');
writeln('Matematika:');
readln(AB_MAT);
writeln('Russkiy yazik:');
readln(AB_RUS);
writeln('Fizika:');
readln(AB_FIZ);
Inc(I);
end;
write(F,S);
repeat
key1:=false;key2:=false;
writeln('Prodolgit? [Y/N]');
readln(ch);
if (ch='N') or (ch='n') then
begin
key1:=true;
key2:=true;
end;
if (ch='Y') or (ch='y') then key2:=true;
until key2;
until key1;
close(F);
{-------------------------------OBRABOTKA_FAILA_1---------------------------}
assign(F,'abitura.dat');
assign(F1,'abitura1.dat');
reset(F);rewrite(F1);
clrscr;
while (not EOF(F)) do
begin
read(F,S);
with S do
if ((GODOKON-GODROG)<18) and ((GODOKON-GODROG)<>18) then write(F1,S);
end;
close(F);close(F1);
{@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-VIVOD_DANNIH_1-@@@@@@@@@@@@@@@@@@@@@@@@@@@}
assign(F1,'abitura.dat');
reset(F1);
I:=1;
clrscr;
while (not EOF(F1)) do
begin
read(F1,S);
with S do
begin
writeln;
writeln('-------------------------------------------------------');
writeln('Dannie o ',I,'-m abituriente:');
writeln('-------------------------------------------------------');
writeln('FIO: ',FIO);
writeln('God rogdeniya: ',GODROG);
writeln('God okonchaniya shkoli: ',GODOKON);
writeln;
writeln('Ozenki attestata:');
writeln('Matematika: ',AT_MAT);
writeln('Russkiy yazik: ',AT_RUS);
writeln('Fizika: ',AT_FIZ);
writeln;
writeln('Obshegitie: ',OBSHAGA);
writeln;
writeln('Ozenki vstupitelnih ekzamenov:');
writeln('Matematika: ',AB_MAT);
writeln('Russkiy yazik: ',AB_RUS);
writeln('Fizika: ',AB_FIZ);
Inc(I);
end;
end;
close(F1);
{+++++++++++++++++++++++++++++-OBRABOTKA_FAILA_2-+++++++++++++++++++++++++++}
assign(F1,'abitura1.dat');
reset(F1);
clrscr;
writeln('Vvedite eshe ',N,' zapisey...');
I:=1;
for K:=1 to N do
begin
seek(F1,filesize(F1));
with S do
begin
writeln;
writeln('-------------------------------------------------------');
writeln('Vvedite dannie o ',I,'-m abituriente:');
writeln('-------------------------------------------------------');
writeln('Vvedite FIO:');
readln(FIO);
writeln('Vvedite god rogdeniya:');
readln(GODROG);
writeln('Vvedite god okonchaniya shkoli:');
readln(GODOKON);
writeln;
writeln('Vvedite ozenki attestata:');
writeln('Matematika:');
readln(AT_MAT);
writeln('Russkiy yazik:');
readln(AT_RUS);
writeln('Fizika:');
readln(AT_FIZ);
writeln;
repeat
key1:=false;
writeln('Nugdaetsya v obshage? [Y/N]');
readln(OBSHAGA);
if (OBSHAGA in ['Y','y','N','n']) then key1:=true;
until key1;
writeln;
writeln('Vvedite ozenki vstupitelnih ekzamenov:');
writeln('Matematika:');
readln(AB_MAT);
writeln('Russkiy yazik:');
readln(AB_RUS);
writeln('Fizika:');
readln(AB_FIZ);
Inc(I);
clrscr;
end;
write(F1,S);
end;
close(F1);
{@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-VIVOD_DANNIH_2-@@@@@@@@@@@@@@@@@@@@@@@@@@@@}
assign(F1,'abitura1.dat');
reset(F1);
I:=1;
clrscr;
while (not EOF(F1)) do
begin
read(F1,S);
with S do
if (OBSHAGA='y') then
begin
writeln;
writeln('-----------------------------------------------------');
writeln('Dannie o ',I,'-m abituriente:');
writeln('-----------------------------------------------------');
writeln('FIO: ',FIO);
writeln('God rogdeniya: ',GODROG);
writeln('God okonchaniya shkoli: ',GODOKON);
writeln;
writeln('Ozenki attestata:');
writeln('Matematika: ',AT_MAT);
writeln('Russkiy yazik: ',AT_RUS);
writeln('Fizika: ',AT_FIZ);
writeln;
writeln('Obshegitie: ',OBSHAGA);
writeln;
writeln('Ozenki vstupitelnih ekzamenov:');
writeln('Matematika: ',AB_MAT);
writeln('Russkiy yazik: ',AB_RUS);
writeln('Fizika: ',AB_FIZ);
Inc(I);
end;
end;
close(F1);
end.


Но прога вылетает на главный экран при выполнении (-OBRABOTKA_FAILA_2-)...и не пойму в чём дело...

Прошу Вас помочь мне и исправить ошибки.

З.Ы. Мне в четверг сдвать, так что завтра крайний срокsad.gif

Сообщение отредактировано: st3lz -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #14


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


М
Не задавай свои вопросы в чужих темах - создавай свои! На пераый раз прощаю.


Цитата(st3lz @ 19.11.2008 1:51) *
прога вылетает на главный экран при выполнении (-OBRABOTKA_FAILA_2-)...и не пойму в чём дело...
А куда она должна вылетать? И что есть "главный" экран?..

Цитата(st3lz @ 19.11.2008 1:51) *
З.Ы. Мне в четверг сдвать, так что завтра крайний срокsad.gif
Тут никого не интересуют твои проблемы с временем - надо было раньше начинать.. Хочешь скорее - задавай вопросы яснее.

Совет: используй отладку (F7,F8,F4,Ctrl-F7...).
Совет 2: форматируй код. Я тебе отформатировал, придерживайся этих правил.
Совет 3: используй процедуры и/или функции для ввода однотипных данных.

Отформатированный код:
uses crt;
type
ABIT=record
FIO:string[30];
GODROG:integer;
GODOKON:integer;
AT_MAT:integer;
AT_RUS:integer;
AT_FIZ:integer;
OBSHAGA:char;
AB_MAT:integer;
AB_RUS:integer;
AB_FIZ:integer;
end;
const
N=3;
var
F,F1:file of ABIT;
S:ABIT;
ch:char;
I,K:integer;
key1,key2:boolean;

begin
{###########-VVOD_DANNIH-#############################}
I:=1;
assign(F,'abitura.dat');
rewrite(F);
repeat
with S do begin
clrscr;
writeln;
writeln('-------------------------------------------------------');
writeln('Vvedite dannie o ',I,'-m abituriente:');
writeln('-------------------------------------------------------');
writeln('Vvedite FIO:');
readln(FIO);
writeln('Vvedite god rogdeniya:');
readln(GODROG);
writeln('Vvedite god okonchaniya shkoli:');
readln(GODOKON);
writeln;
writeln('Vvedite ozenki attestata:');
writeln('Matematika:');
readln(AT_MAT);
writeln('Russkiy yazik:');
readln(AT_RUS);
writeln('Fizika:');
readln(AT_FIZ);
writeln;
repeat
key1:=false;
writeln('Nugdaetsya v obshage? [Y/N]');
readln(OBSHAGA);
if (OBSHAGA in ['Y','y','N','n']) then key1:=true;
until key1;
writeln;
writeln('Vvedite ozenki vstupitelnih ekzamenov:');
writeln('Matematika:');
readln(AB_MAT);
writeln('Russkiy yazik:');
readln(AB_RUS);
writeln('Fizika:');
readln(AB_FIZ);
Inc(I);
end;
write(F,S);
repeat
key1:=false;key2:=false;
writeln('Prodolgit? [Y/N]');
readln(ch);
if (ch='N') or (ch='n') then begin
key1:=true;
key2:=true;
end;
if (ch='Y') or (ch='y') then key2:=true;
until key2;
until key1;
close(F);
{-------------------------------OBRABOTKA_FAILA_1---------------------------}
assign(F,'abitura.dat');
assign(F1,'abitura1.dat');
reset(F);rewrite(F1);
clrscr;
while (not EOF(F)) do begin
read(F,S);
with S do if ((GODOKON-GODROG)<18) and ((GODOKON-GODROG)<>18) then write(F1,S);
end;
close(F);close(F1);
{@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-VIVOD_DANNIH_1-@@@@@@@@@@@@@@@@@@@@@@@@@@@}
assign(F1,'abitura.dat');
reset(F1);
I:=1;
clrscr;
while (not EOF(F1)) do begin
read(F1,S);
with S do begin
writeln;
writeln('-------------------------------------------------------');
writeln('Dannie o ',I,'-m abituriente:');
writeln('-------------------------------------------------------');
writeln('FIO: ',FIO);
writeln('God rogdeniya: ',GODROG);
writeln('God okonchaniya shkoli: ',GODOKON);
writeln;
writeln('Ozenki attestata:');
writeln('Matematika: ',AT_MAT);
writeln('Russkiy yazik: ',AT_RUS);
writeln('Fizika: ',AT_FIZ);
writeln;
writeln('Obshegitie: ',OBSHAGA);
writeln;
writeln('Ozenki vstupitelnih ekzamenov:');
writeln('Matematika: ',AB_MAT);
writeln('Russkiy yazik: ',AB_RUS);
writeln('Fizika: ',AB_FIZ);
Inc(I);
end;
end;
close(F1);
{+++++++++++++++++++++++++++++-OBRABOTKA_FAILA_2-+++++++++++++++++++++++++++}
assign(F1,'abitura1.dat');
reset(F1);
clrscr;
writeln('Vvedite eshe ',N,' zapisey...');
I:=1;
for K:=1 to N do begin
seek(F1,filesize(F1));
with S do begin
writeln;
writeln('-------------------------------------------------------');
writeln('Vvedite dannie o ',I,'-m abituriente:');
writeln('-------------------------------------------------------');
writeln('Vvedite FIO:');
readln(FIO);
writeln('Vvedite god rogdeniya:');
readln(GODROG);
writeln('Vvedite god okonchaniya shkoli:');
readln(GODOKON);
writeln;
writeln('Vvedite ozenki attestata:');
writeln('Matematika:');
readln(AT_MAT);
writeln('Russkiy yazik:');
readln(AT_RUS);
writeln('Fizika:');
readln(AT_FIZ);
writeln;
repeat
key1:=false;
writeln('Nugdaetsya v obshage? [Y/N]');
readln(OBSHAGA);
if (OBSHAGA in ['Y','y','N','n']) then key1:=true;
until key1;
writeln;
writeln('Vvedite ozenki vstupitelnih ekzamenov:');
writeln('Matematika:');
readln(AB_MAT);
writeln('Russkiy yazik:');
readln(AB_RUS);
writeln('Fizika:');
readln(AB_FIZ);
Inc(I);
clrscr;
end;
write(F1,S);
end;
close(F1);
{@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-VIVOD_DANNIH_2-@@@@@@@@@@@@@@@@@@@@@@@@@@@@}
assign(F1,'abitura1.dat');
reset(F1);
I:=1;
clrscr;
while (not EOF(F1)) do begin
read(F1,S);
with S do
if (OBSHAGA='y') then
begin
writeln;
writeln('-----------------------------------------------------');
writeln('Dannie o ',I,'-m abituriente:');
writeln('-----------------------------------------------------');
writeln('FIO: ',FIO);
writeln('God rogdeniya: ',GODROG);
writeln('God okonchaniya shkoli: ',GODOKON);
writeln;
writeln('Ozenki attestata:');
writeln('Matematika: ',AT_MAT);
writeln('Russkiy yazik: ',AT_RUS);
writeln('Fizika: ',AT_FIZ);
writeln;
writeln('Obshegitie: ',OBSHAGA);
writeln;
writeln('Ozenki vstupitelnih ekzamenov:');
writeln('Matematika: ',AB_MAT);
writeln('Russkiy yazik: ',AB_RUS);
writeln('Fizika: ',AB_FIZ);
Inc(I);
end;
end;
close(F1);
end.


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #15


Бывалый
***

Группа: Пользователи
Сообщений: 212
Пол: Мужской

Репутация: -  0  +


volvo спасибо за
Цитата
2. Выделяешь с помощью GetMem динамическую память, достаточную для размещения в ней тех записей, которые нужно сохранить, и заносишь эти записи в дин. память;

Так и сделал. Мне конечно не требуеться по заданию но на всякий случай вписал процедуру) На будущее пригодиться думаю)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 29.03.2024 4:51
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name