Ошибка с записью в типизированный файл - Free Pascal
Формулировка задачи:
В строчках под номером 21, 25, 29 при кампиляции кода, выдает ошибку о несовместимости типов. Если, окажется, что ошибку не исправить, то будьте добры, подскажите, как с консоли записать что-либо в типизированный файл.
Листинг программы
- Program PhoneBook;
- Uses
- Crt;
- Const
- FName='PhoneBook.txt';
- Type
- TPhoneBook=Record
- Name:String;
- SurName:String;
- Number:LongInt;
- end;
- Var
- Rab:TPhoneBook;
- F:File of TPhoneBook ;
- Ch:Char;
- Procedure InPut;
- begin
- Write('Vvedite Imja: ');
- ReadLn(Rab.Name);
- Write(F,Rab.Name);
- {____________________________}
- Write('Vvedite Familiju: ');
- ReadLn(Rab.SurName);
- Write(F,Rab.SurName);
- {____________________________}
- Write('Vvedite Nomer: ');
- ReadLn(Rab.Number);
- Write(F,Rab.Number);
- end;
- Procedure OutPut;
- var
- UName,SUName:String;
- begin
- Write('Vvedite Imja: ');
- ReadLn(UName);
- {_________________________}
- Write('Vvedite Familiju: ');
- ReadLn(SUName);
- While Not EoF(F) do
- begin
- Read(F,Rab);
- If (Rab.Name=Uname) and (Rab.SurName=SUName) then
- WriteLn(Rab.Number);
- end;
- end;
- Begin
- ClrScr;
- Assign(F,FName);
- Reset(F);
- WriteLn('Jeta programa PhoneBook.');
- WriteLn('Vvoditj nomer i imja: Press "D"');
- WriteLn('Prosmotr nomera po imeni: Press "V"');
- WriteLn('Vixod iz programmi: Press "Q"');
- ReadLn(Ch);
- While (Ch<>'Q') do
- begin
- If Ch='D' then
- InPut// Procedurka, vvoda imeni i nomera telefona
- Else
- OutPut;// Procedurka, vivoda nomera po imeni
- WriteLn('4to delajem dal6e["D"=vvod,"V"=vivod,"Q"=vixod]:');
- ReadLn(Ch);
- end;
- WriteLn('Vsego dobrogo!');
- Close(F);
- ReadKey;
- End.
Решение задачи: «Ошибка с записью в типизированный файл»
textual
Листинг программы
- ReadLn(Rab.Name);
- ReadLn(Rab.SurName);
- ReadLn(Rab.Number);
- Write(F,Rab);
Объяснение кода листинга программы
- Программа запрашивает и сохраняет в переменных имя, фамилию и номер пациента.
- Затем программа пытается записать данные о пациенте в типизированный файл с именем
Rab
. - Если файл не существует, программа создает его.
- Если файл существует, программа открывает его для записи.
- Затем программа записывает данные о пациенте в файл.
- После успешной записи программа закрывает файл.
- Если возникла ошибка при записи в файл, программа выводит сообщение об ошибке и прекращает выполнение.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д