Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
2
Добавлен:
30.05.2020
Размер:
8 Кб
Скачать
Unit vypuskniki;
interface
uses Crt;
type school = record
     fam,im,otch:string;
     klass:string;
     nom_atest:string;
     sr_bal:real;
     u4_zaved:string;
     end;


var f: file of school;
    i,v:integer;
    z:school;
    st:string;
    n:byte;
    n_z:byte;
    s:real;
    procedure Vvod;
    procedure Vyvod;
    procedure Dobavit;
    procedure Redakt;
    procedure Delete;
    procedure Poisk;
    procedure Poisk1;

    implementation
    procedure vvod;
    begin
    clrscr;
    rewrite(f);
    readln;
    i:=1; st:='d';
    while st='d' do
    begin
         clrscr;
         writeln('Vvedite dannye ',i, ' vypusknika');
         write('Vvedite familiju:');   readln(z.fam);
         write('Vvedite imja : ');               readln(z.im);
         write('Vvedite otchestvo : ');  readln(z.otch);
         write('Vvedite klass:'); readln(z.klass);
         write('Vvedite ь atestata:'); readln(z.nom_atest);
         write('Vvedite sredniy bal:'); readln(z.sr_bal);
         write('Vvedite vid uchebnogo zavedeniya (1-VNZ; 2-Kolleg; 3-Uchilishw; 4-ne u4itsya)');
         readln(n);
         case n of
         1:z.u4_zaved:='VNZ';
         2:z.u4_zaved:='Kolleg';
         3:z.u4_zaved:='Uchilishe';
         4:z.u4_zaved:='Ne u4itsya';
         end;
         write(f,z);
         i:=i+1;
         writeln ('Hotite prodolzhit (d/n)');readln(st);
         end;
         close(f);

         readkey;
         end;
     Procedure Vyvod;
begin
   clrscr;
   reset(f);
   if filesize(f)=0 then begin
   textcolor(4);
   writeln('‚ Ў §Ґ ­Ґв § ЇЁбҐ©');
   textcolor(15); end else
  begin
     gotoXY(34,1); Write('Spisok vypusknikov');
     gotoXY(1,2);  write('Familiya');
     gotoXY(12,2); write('Im9');
     gotoXY(22,2);  write('Ot4estvo');
     gotoXY(36,2); write('Klass');
     gotoXY(42,2); write('ь atest');
     gotoXY(52,2);  write('Sr bal');
     gotoXY(59,2);  write('Vid u/z');
     writeln; i:=1;
   while not (eof(f)) do
    begin
       read(f,z);
       gotoXY(1,wherey);  write(z.fam);
       gotoXY(12,wherey);  write(z.im);
       gotoXY(22,wherey); write(z.otch);
       gotoXY(36,wherey); write(z.klass);
       gotoXY(42,wherey); write(z.nom_atest);
       gotoXY(52,wherey); write(z.sr_bal:4:2);
       gotoXY(59,wherey); write(z.u4_zaved);
       i:=i+1;
       writeln;
  end;
  end;
   close(f);
   readkey;
end;

Procedure Dobavit;
Begin
   clrscr;
   reset(f);
   seek(f,filesize(f));
   readln;
   st:='d';
  while st='d' do
   begin
      clrscr;
         writeln('Vvedite dannye ',i, ' vypusknika');
         write('Vvedite familiju:');   readln(z.fam);
         write('Vvedite imja : ');               readln(z.im);
         write('Vvedite otchestvo : ');  readln(z.otch);
         write('Vvedite klass:'); readln(z.klass);
         write('Vvedite ь atestata:'); readln(z.nom_atest);
         write('Vvedite sredniy bal:'); readln(z.sr_bal);
         write('Vvedite vid uchebnogo zavedeniya(1-VNZ; 2-Kolleg; 3-Uchilishw; 4-ne u4itsya :');
         readln(n);
         case n of
         1:z.u4_zaved:='VNZ';
         2:z.u4_zaved:='Kolleg';
         3:z.u4_zaved:='Uchilishe';
         4:z.u4_zaved:='Ne u4itsya';
         end;
         write(f,z);
      writeln('Hotite prodolzhit (d/n)');    readln(st);
         end;
   close(f);

readkey;
end;

Procedure Redakt;
begin
   clrscr;
   reset(f);
   if filesize(f)=0 then begin
   textcolor(4);
   writeln('V BD netu danoi zapisi');
   textcolor(15); end else
begin
     gotoXY(34,1); Write('Spisok vypusknikov');
     gotoXY(1,2);  write('Familiya');
     gotoXY(12,2); write('Im9');
     gotoXY(22,2);  write('Ot4estvo');
     gotoXY(34,2); write('Klass');
     gotoXY(40,2); write('ь atest');
     gotoXY(50,2);  write('Sr bal');
     gotoXY(57,2);  write('Vid u/z');
     writeln; i:=1;
   while not (eof(f)) do
    begin
       read(f,z);
       gotoXY(1,wherey);  write(z.fam);
       gotoXY(12,wherey);  write(z.im);
       gotoXY(22,wherey); write(z.otch);
       gotoXY(34,wherey); write(z.klass);
       gotoXY(40,wherey); write(z.nom_atest);
       gotoXY(50,wherey); write(z.sr_bal:4:2);
       gotoXY(57,wherey); write(z.u4_zaved);
       i:=i+1;
       writeln;
    end;
  end;
   close(f);
   reset(f);
   writeln;
   write('Nomer zapisi:'); read(n_z);
   if n_z>filesize(f) then write('Danaya zapis otsutstvuet') else
   begin
   readln;
   seek(f,n_z-1);

         write('Vvedite familiju:');   readln(z.fam);
         write('Vvedite imja : ');               readln(z.im);
         write('Vvedite otchestvo : ');  readln(z.otch);
         write('Vvedite klass:'); readln(z.klass);
         write('Vvedite ь atestata:'); readln(z.nom_atest);
         write('Vvedite sredniy bal:'); readln(z.sr_bal);
         write('Vvedite vid uchebnogo zavedeniya (1-VNZ; 2-Kolleg; 3-Uchilishw; 4-ne u4itsya)');
         readln(n);
         case n of
         1:z.u4_zaved:='VNZ';
         2:z.u4_zaved:='Kolleg';
         3:z.u4_zaved:='Uchilishe';
         4:z.u4_zaved:='Ne u4itsya';
         end;
         write(f,z);
         close(f);
end;
readkey;
end;

procedure delete;
begin
   clrscr;
   reset(f);
   if filesize(f)=0 then begin
   textcolor(4);
   writeln('V BD netu danoi zapisi');
   textcolor(15); end else
begin
     gotoXY(34,1); Write('Spisok vypusknikov');
     gotoXY(1,2);  write('Familiya');
     gotoXY(12,2); write('Im9');
     gotoXY(22,2);  write('Ot4estvo');
     gotoXY(34,2); write('Klass');
     gotoXY(40,2); write('ь atest');
     gotoXY(50,2);  write('Sr bal');
     gotoXY(57,2);  write('Vid u/z');
     writeln; i:=1;
   while not (eof(f)) do
    begin
       read(f,z);
       gotoXY(1,wherey);  write(z.fam);
       gotoXY(12,wherey);  write(z.im);
       gotoXY(22,wherey); write(z.otch);
       gotoXY(34,wherey); write(z.klass);
       gotoXY(40,wherey); write(z.nom_atest);
       gotoXY(50,wherey); write(z.sr_bal:4:2);
       gotoXY(57,wherey); write(z.u4_zaved);
       writeln;
       i:=i+1;

    end;
    end;
   close(f);
   reset(f);
   writeln;
   write('Nomer zapisi:'); read(n_z);
   if n_z>filesize(f) then write('Danaya zapis otsutstvuet') else
   begin
  seek(f,filesize(f)-1);
  read(f,z);
  seek(f,n_z-1);
  write(f,z);
  seek(f,filesize(f)-1);
  truncate(f);
  writeln('Zapis udalena');
  end;

  readkey;
  end;

Procedure Poisk;
begin
  clrscr;
  reset(f);
  write('Vvedite srednii bal:'); readln(s);
  writeln; v:=0;
  writeln('Spisok vypusknikov so srednim balom vyshe:',s:4:2);
  for i:=1 to filesize(f) do
 begin
   read(f,z);
   if s<=z.sr_bal then
  begin
    gotoXY(1,wherey);  write(z.fam);
    gotoXY(12,wherey); write(z.im);
    gotoXY(22,wherey); write(z.otch);
    gotoXY(34,wherey); write(z.klass);
    gotoXY(40,wherey); write(z.nom_atest);
    gotoXY(50,wherey); write(z.sr_bal:4:2);
    gotoXY(57,wherey); write(z.u4_zaved);
    writeln;
  end else v:=v+1;
 end;
 if v=i then writeln('Takogo sr_bala ne mozjet byt');
 readkey;
 close(f);
end;

Procedure Poisk1;
begin
  clrscr;
  reset(f);
  v:=0;;
  for i:=1 to filesize(f) do
 begin
   read(f,z);
   if z.u4_zaved='VNZ' then
  begin
    gotoXY(1,wherey);  write(z.fam);
    gotoXY(12,wherey); write(z.im);
    gotoXY(22,wherey); write(z.otch);
    gotoXY(34,wherey); write(z.klass);
    gotoXY(40,wherey); write(z.nom_atest);
    gotoXY(50,wherey); write(z.sr_bal:4:2);
    gotoXY(57,wherey); write(z.u4_zaved);
    writeln;
  end else v:=v+1;
 end;
 if v=i then writeln('Vupusnikov net');
 readkey;
 close(f);
end;
end.
Соседние файлы в папке Курсовая