All pastes #441307 Raw Edit

Roszek

public text v1 · immutable
·published 2007-04-15 16:52 UTC
rendered paste body
program ciupaga;
uses Crt;
const
nazwa2='H:\pliki\pomdart.dat';
nazwa='H:\pliki\data.dat';
max=100;
type

  uczen=record
             imie:string[20];
             nazwisko:string[30];
             wiek:byte;
             sr_ocen:real;
       end;

  plik=file of uczen;

var
    p:plik;
    odp:char;
    n:byte;
    ucz:uczen;

procedure dopis (var p:plik);
var a:integer;
begin
     assign(p,nazwa);
     {$I-}
     reset(p);
     {$I+}
     if IOResult=0 then seek(p,filesize(p)) else rewrite(p);
     writeln('TWORZENIE NOWEGO WPISU');
     write('Podaj imie: ');
     readln(ucz.imie);
     write('Podaj nazwisko: ');
     readln(ucz.nazwisko);
     write('Podaj wiek: ');
     readln(ucz.wiek);
     write('Podaj srednia ocen: ');
     readln(ucz.sr_ocen);
     write(p,ucz);
     close(p);
end;


procedure wypis (var p:plik);
var a,i:integer;
begin
     assign(p,nazwa);
     {$I-}
     reset(p);
     {$I+}
     if IOResult=0 then
       begin
            while not eof(p) do
                                   begin
                                      read(p,ucz);
                                      writeln(ucz.nazwisko,' ',ucz.imie);
                                      writeln(ucz.wiek,' lat');
                                      writeln(ucz.sr_ocen:2:2,' srednia ocen');
                                      writeln;
                                   end;
       readkey;
       close(p);
       end else write('Plik nie istnieje');

end;



procedure ilosc(var p:plik);
var a:string[20];
    w:byte;
    sr:real;
begin
     assign(p,nazwa);
     reset(p);
     writeln('Wg jakiego kryterium wysukiwac?: ');
     writeln('1 - Imie');
     writeln('2 - Nazwisko');
     writeln('3 - Wiek');
     writeln('4 - Sr ocen');
     odp:=readkey;
     case odp of
     '1':begin
                write('Podaj poszukiwana wartosc: ');
                readln(a);
                writeln;
                while not eof(p) do

                                 begin
                                 read(p,ucz);
                                 if ucz.imie=a then begin
                                      writeln(ucz.nazwisko,' ',ucz.imie);
                                      writeln(ucz.wiek,' lat');
                                      writeln(ucz.sr_ocen:2:2,' srednia ocen');
                                      writeln;
                                      end;
                                 end;
         end;
     '2':begin
                write('Podaj poszukiwana wartosc: ');
                readln(a);
                writeln;
                while not eof(p) do

                                 begin
                                 read(p,ucz);
                                 if ucz.nazwisko=a then begin
                                      writeln(ucz.nazwisko,' ',ucz.imie);
                                      writeln(ucz.wiek,' lat');
                                      writeln(ucz.sr_ocen:2:2,' srednia ocen');
                                      writeln;
                                      end;
                                 end;
         end;
     '3':begin
                write('Podaj poszukiwana wartosc: ');
                readln(w);
                writeln;
                while not eof(p) do

                                 begin
                                 read(p,ucz);
                                 if ucz.wiek=w then begin
                                      writeln(ucz.nazwisko,' ',ucz.imie);
                                      writeln(ucz.wiek,' lat');
                                      writeln(ucz.sr_ocen:2:2,' srednia ocen');
                                      writeln;
                                      end;
                                 end;
         end;
     '4':begin
                write('Podaj poszukiwana wartosc: ');
                readln(sr);
                writeln;
                while not eof(p) do

                                 begin
                                 read(p,ucz);
                                 if ucz.sr_ocen=sr then begin
                                      writeln(ucz.nazwisko,' ',ucz.imie);
                                      writeln(ucz.wiek,' lat');
                                      writeln(ucz.sr_ocen:2:2,' srednia ocen');
                                      writeln;
                                      end;
                                 end;
         end;
     end;
     readkey;
     close(p);
end;

procedure menu;
var odp:char;
begin
	ClrScr;
        textcolor(green);
        writeln(' *===========================================*');
        writeln('|| 1 - Dopisywanie osoby                     ||');
        writeln('|| 2 - Wypisanie listy  osob                 ||');
        writeln('|| 3 - Wyszukiwarka                          ||');
        writeln('|| 4 - NIE WIEM                              ||');
        writeln('|| Esc - Wyjscie                             ||');
        writeln(' *===========================================*');
        textcolor(red);
        writeln;
        writeln('Czego pragniesz?');
        textcolor(7);
	odp:=readkey;
        case odp of
        '1':dopis(p);
        '2':wypis(p);
        '3':ilosc(p);
        #27:halt;
        end;

end;


begin
	repeat menu;
	until false;
end.