Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program Osoba13_1;
- uses crt;
- type
- TOsoba = object
- jmeno:string;
- vek,vyska,vaha:integer;
- constructor Init(jm:string;
- ve,vys,va:integer);
- function GetJmeno:string;
- function GetVek:integer;
- function Getvyska:integer;
- function Getvaha:integer;
- procedure zadej;
- procedure pozdrav; virtual;
- Procedure Porovnejvaha(on: TOsoba);
- Procedure Setkani(on: TOsoba);
- end;
- TStudent = object(TOsoba)
- roc: integer;
- constructor init (jm:string;
- ve,vys,va,ro:integer);
- function getRoc:integer;
- procedure pozdrav; virtual;
- procedure vypis;
- procedure zadej;
- end;
- TZam = object(TOsoba)
- kat: integer;
- constructor Init (jm:string;
- ve,vys,va,ka:integer);
- function getKat:integer;
- procedure pozdrav; virtual;
- procedure vypis;
- procedure zadej;
- end;
- Constructor TOsoba.Init(jm:string;
- ve,vys,va:integer);
- Begin
- jmeno:=jm;
- vek:=ve;
- vyska:=vys;
- vaha:=va;
- end;
- procedure TOsoba.zadej;
- var c:integer;
- begin
- write('Zadej jmeno: ');
- readln(jmeno);
- {$I-}
- write('Zadej vek: ');
- readln(vek);
- c:=IOResult;
- while (c<>0) or (vek<=0) do
- begin
- write('Chybne cislo, zadej kladne cislo znovu: ');
- readln(vek);
- c:=IOResult
- end;
- write('Zadej vysku: ');
- readln(vyska);
- c:=IOResult;
- while (c<>0) or (vyska<=0) do
- begin
- write('Chybne cislo, zadej kladne cislo znovu: ');
- readln(vyska);
- c:=IOResult
- end;
- write('Zadej vahu: ');
- readln(vaha);
- c:=IOResult;
- while (c<>0) or (vaha<=0) do
- begin
- write('Chybne cislo, zadej kladne cislo znovu: ');
- readln(vaha);
- c:=IOResult
- end;
- end;
- function TOsoba.GetJmeno:string;
- begin
- GetJmeno:=Jmeno
- end;
- function TOsoba.GetVek:integer;
- begin
- GetVek:=vek
- end;
- Function TOsoba.GetVyska:integer;
- begin
- getvyska:=vyska
- end;
- function TOsoba.GetVaha:integer;
- begin
- GetVaha:=vaha
- end;
- procedure TOsoba.porovnejVaha (on: TOsoba);
- begin
- if self.vaha > on.getVaha
- then writeln('Ja ',self.jmeno,' jsem tezsi nez ', on.getJmeno)
- else writeln('ja ',self.jmeno,' jsem lehci nez ',on.getJmeno)
- end;
- Constructor TStudent.Init (jm:string;
- ve,vys,va,ro:integer);
- begin TOsoba.Init(jm,ve,vys,va);
- roc:=ro
- end;
- procedure TStudent.zadej;
- var c:integer;
- begin
- write('Zadej jmeno: ');
- readln(jmeno);
- {$I-}
- write('Zadej vek: ');
- readln(vek);
- c:=IOResult;
- while (c<>0) or (vek<=0) do
- begin
- write('Chybne cislo, zadej kladne cislo znovu: ');
- readln(vek);
- c:=IOResult
- end;
- write('Zadej vysku: ');
- readln(vyska);
- c:=IOResult;
- while (c<>0) or (vyska<=0) do
- begin
- write('Chybne cislo, zadej kladne cislo znovu: ');
- readln(vyska);
- c:=IOResult
- end;
- write('Zadej vahu: ');
- readln(vaha);
- c:=IOResult;
- while (c<>0) or (vaha<=0) do
- begin
- write('Chybne cislo, zadej kladne cislo znovu: ');
- readln(vaha);
- c:=IOResult
- end;
- end;
- Function TStudent.getRoc:integer;
- begin
- getRoc:=roc
- end;
- Procedure TStudent.vypis;
- begin
- writeln('Student: ',jmeno,' Vek: ',vek:2,' Vyska: ',vyska:3,' Vaha: ',vaha:2,' Rocnik: ',roc:1)
- end;
- constructor TZam.Init(jm:string;
- ve,vys,va,ka:integer);
- begin
- jmeno:=jm;
- vek:=ve;
- vyska:=vys;
- vaha:=va;
- kat:=ka;
- end;
- procedure TZam.zadej;
- var c:integer;
- begin
- write('Zadej jmeno: ');
- readln(jmeno);
- {$I-}
- write('Zadej vek: ');
- readln(vek);
- c:=IOResult;
- while (c<>0) or (vek<=0) do
- begin
- write('Chybne cislo, zadej kladne cislo znovu: ');
- readln(vek);
- c:=IOResult
- end;
- write('Zadej vysku: ');
- readln(vyska);
- c:=IOResult;
- while (c<>0) or (vyska<=0) do
- begin
- write('Chybne cislo, zadej kladne cislo znovu: ');
- readln(vyska);
- c:=IOResult
- end;
- write('Zadej vahu: ');
- readln(vaha);
- c:=IOResult;
- while (c<>0) or (vaha<=0) do
- begin
- write('Chybne cislo, zadej kladne cislo znovu: ');
- readln(vaha);
- c:=IOResult
- end;
- end;
- function TZam.getKat:integer;
- begin
- getkat:=kat
- end;
- Procedure TZam.vypis;
- begin
- writeln('Student: ',jmeno,' Vek: ',vek:2,' Vyska: ',vyska:3,' Vaha: ',vaha:2,' Rocnik: ',kat:1)
- end;
- procedure TOsoba.pozdrav;
- begin
- writeln('Dobry den')
- end;
- procedure TOsoba.setkani(on:TOsoba);
- begin
- self.pozdrav;
- on.pozdrav
- end;
- procedure TStudent.pozdrav;
- begin
- writeln('Cau')
- end;
- procedure TZam.pozdrav;
- begin
- writeln('Ahoj')
- end;
- var i:integer;
- stud1, stud2: TStudent;
- zam1, zam2: TZam;
- BEGIN
- clrscr;
- stud1.zadej;
- stud2.zadej;
- stud1.vypis;
- stud2.vypis;
- writeln;
- zam1.zadej;
- zam2.zadej;
- zam1.vypis;
- zam2.vypis;
- writeln;
- stud1.porovnejVaha(stud2);
- stud1.porovnejVaha(zam2);
- zam1.porovnejVaha(zam2);
- readln;
- for i:= 1 to 3 do
- begin
- stud1.setkani(stud1);
- writeln;
- stud2.setkani(zam2);
- writeln;
- zam1.setkani(zam2);
- writeln('------');
- readln
- end;
- END.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement