Архивировано

Эта тема находится в архиве и закрыта для публикации сообщений.

olra

Типизированные файлы в Паскале.

Рекомендованные сообщения

У меня есть запись подготовленных данных (код я написал), не знаю как сделать следующее: Разработать программу записи подготовленных данных во внешний файл, вывод исходных данных из файла, добавление данных в файл.

Необходимо использовать меню. Пожалуйста, кому не жалко времени, напишите код до конца.

uses crt;
type
studlib=record
FIO:string;
Birth_Date:string;
Course:integer;
Year: word;
Marks:Array [1..3] of integer;
Mmark: Real;
end;

var
stud: Array [1..10] of studlib;
i,N: integer;
Procedure Out_Date (std: Studlib);
var j: integer;
begin
with std do
begin
write (FIO);
FOR J:=Length (FIO)+ 1 TO 30 DO WRITE ('');
WRITE (Birth_Date);
write (Course:3);
write (Year:5);
for j:= 1 to 3 do
write (Marks [j]:4);
writeln (Mmark:7:2);
end;
end;
BEGIN
clrscr;
N:=0;
writeln ('Vvodite dannie o studentah');
repeat
Inc(N);
WITH stud[N] do
begin
write ('FIO:');
readln(FIO);
WRITE ('Birth Date (dd.mm.yyyy.):');
readln(Birth_Date);
write('Course');
write('Year of entry:');
readln(Year);
Mmark:=0;
for i:=1 to 3 do
begin
write('Mark',i,'=');
readln(Marks);
Mmark:=Mmark+Marks/3;
end;
end;
clrscr;
writeln ('Enter-continue, ESC-quit');
until (readkey=#27) or (N=100);
clrscr;
writeln ('Granted students:');
for i:=1 to N do
if stud. Mmark>=7.0 then
Out_Date(stud);
readkey;
END.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Не читабельно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Не читабельно. [2]

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Не читабельно.

Не читабельно. [2]

А так?

Uses CRT;

Type
 studlib = record
 FIO        : String;
 Birth_Date : String;
 Course     : Integer;
 Year       : Word;
 Marks      : Array [1..3] of Integer;
 Mmark      : Real;
end;

Var
  stud : Array [1..10] of studlib;
  i,N  : integer;

Procedure Out_Date (std: Studlib);
var
 j: integer;

begin
 with std do
 begin
   Write (FIO);
   for J:= Length (FIO)+ 1 TO 30 DO
     Write ('');
   Write (Birth_Date);
   Write (Course:3);
   Write (Year:5);
   for j:= 1 to 3 do
     Write (Marks [j]:4);
   WriteLn (Mmark:7:2);
 end;
end;


Begin

 ClrScr;

 N := 0;

 WriteLn ('Vvodite dannie o studentah');

 Repeat
   Inc(N);
   with stud[N] do

   begin
     Write ('FIO:');
     ReadLn(FIO);
     Write ('Birth Date (dd.mm.yyyy.):');
     ReadLn(Birth_Date);
     Write ('Course');
     Write ('Year of entry:');
     ReadLn(Year);

     Mmark := 0;

     for i:=1 to 3 do

     begin
       Write('Mark', i, '=');
       ReadLn(Marks);

       Mmark := Mmark + Marks / 3;
     end;

   end;

   ClrScr;
   WriteLn ('Enter-continue, ESC-quit');

 until (readkey=#27) or (N=100);

 ClrScr;

 WriteLn ('Granted students:');
 for i:=1 to N do
   if stud. Mmark>=7.0 then Out_Date(stud);

 ReadKey;

End.

Господа студенты, огромная просьба, уважайте преподавателей, рецензентов, консультантов; не умеете писать красиво, напишите парсер.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах