Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program konzum:
- type radnici=record
- ime,prezime,mjesto:string;
- datum_rodenja:record
- dan,mjesec,godina:integer;
- end;
- end;
- type NIZ= array[1..20] of radnici
- var r:radnici; x:NIZ; n:integer;
- procedure UPIS1(var r:radnici);
- begin
- writeln('ucitaj ime');
- readln(r.ime);
- writeln('ucitaj prezime');
- readln(r.prezime);
- writeln('ucitaj mjesto');
- readln(r.mjesto);
- writeln('dan rodenja');
- readln(r.datum_rodenja.dan);
- writeln('mjesec rodenja');
- readln(r.datum_rodenja.mjesec);
- writeln('godina rodenja');
- readln(r.datum_rodenja.godina);
- end;
- procedure UPISSVI(var x:NIZ);
- var i:integer;
- begin
- writeln('ucitaj broj radnika');
- readln(n);
- for i:= 1 to n do UPIS1(x[i]);
- end;
- procedure BLAGAJNICI(var y:NIZ;var j:integer);
- var i,k:integer;
- begin
- j:=0;
- for i:=1 to n do if x[i].mjesto='blagajnik' then
- begin
- j:=j+1;
- y[j]:=x[i];
- end;
- end;
- procedure ISPIS_BLAGAJNICI;
- var i:integer;
- begin
- BLAGAJNICI(y,j);
- for i:=1 to j do writeln(y[i].ime,' ',y[i].prezime);
- end;
- procedure zamjena(var x,y: radnici);
- var f:radnici;
- begin
- f:=x;
- x:=y;
- y:=f;
- end;
- procedure sort(var x:NIZ);
- var i:integer; s:boolean;
- begin
- j:=0;
- repeat
- s:=false; j:=j+1;
- for i:= 1 to n-j do begin if x[i].prezime>x[i+1].prezime then begin zamjena(x[i],x[i+1]);
- s:=true;
- end;
- end;
- until s=false;
- j:=0;
- repeat
- s:=false; j:=j+1;
- for i:= 1 to n-j do begin if ((x[i].prezime=x[i+1].prezime) and (x[i].ime>x[i+1].ime)) then begin zamjena(x[i],x[i+1]);
- s:=true;
- end;
- end;
- until s=false;
- end;
- procedure zaglavlje;
- begin
- writeln('ime':10,'prezime':10,'mjesto':10,'dan':10,'mjesec':10,'godina':10);
- end;
- procedure tablica(x:NIZ);
- var i:integer;
- begin
- zaglavlje;
- for i:= 1 to n do writeln(x[i].ime:10,x[i].prezime:10,x[i].mjesto:10,x[i].datum_rodenja.dan:10,x[i].datum_rodenja.mjesec:10,x[i].datum_rodenja.godina:10);
- end;
- procedure najstariji(x:NIZ);
- var r:radnici;
- begin
- r.datum_rodenja.godina:=x[1].datum_rodenja.godina
- for i:= 1 to n do
- if r.datum_rodenja.godina>x[i].datum_rodenja.godina then r:=x[i];
- for i:= 1 to n do
- if ((r.datum_rodenja.godina=x[i].datum_rodenja.godina) and (r.datum_rodenja.mjesec>x[i].datum_rodenja.mjesec))then r:=x[i];
- for i:= 1 to n do
- if (((r.datum_rodenja.godina=x[i].datum_rodenja.godina) and (r.datum_rodenja.dan>x[i].datum_rodenja.dan)) and
- ((r.datum_rodenja.mjesec=x[i].datum_rodenja.mjesec) and (r.datum_rodenja.dan>x[i].datum_rodenja.dan))) then r:=x[i];
- writeln('najstariji',r.ime,' ',r.prezime);
- end;
- begin
- UPISSVI(x);
- ISPIS_BLAGAJNICI;
- sort(x);
- tablica(x);
- najstariji(x);
- end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement