PROGRAM dnevnik; type podatoci=record imeu,roditel:string[15]; prezimeu:string[30]; adresa:string[50]; datum.na.raganje,telefon:string[10]; brp,oddelenie:integer; prosek:real; ocenki:array[1..20] of intereg; predmeti:array[1..20] of string; profesori:array[1..20] of string; end; VAR d:datoteka; ime_vo_datoteka:string[30]; izbor:char; ucenik:podatoci; meni,i,s:integer; ime:string[10]; prezime:string[30]; predmet:string[30]; PROCEDURE maticni(VAR U:podatoci); BEGIN Write('vnesete ime vo datotekata sto ke se kreira'); Readln(ime_vo_datoteka); assign(d,ime_vo_datoteka); REWRITE(d); izbor:='Y'; REPEAT Writeln('podatoci za ucenik'); Writeln; With U DO BEGIN Write('ime na ucenik') Readln(imeu); Write('prezime'); Readln(prezimeu); Write('ime na roditel'); Readln(roditel); Write('Datum na raganje'); Readln(datum_na_raganje); Write('adresa'); Readln(adresa); Write('telefon'); Readln(telefon); Write('oddelenie'); Readln(oddelenie); Write('vnesete broj na predmeti vo oddelenieto'); Readln(brp); end; Write(d,U); Write('dali ke prodolzete so vnesuvanje na novi podatoci ( Y/N )'); Readln(izbor); Untul upcase (izbor)='N'; close(d); end; PROCEDURE predmeti(VAR U:podatoci); VAR j:integer; BEGIN Write('Vnesete ime na datotekata sto ke se otvora'); Readln(ime_na_datoteka); RESET(d); i:=0; While not (E of (d)) DO BEGIN Read(d,u); i:i+1; With U DO BEGIN Writeln('podatoci za predmetite za ucenikot'); Writeln(imeu,prezimeu); Writeln; Writeln('Vnesete gi predmetite'); for i:=1 to brp do BEGIN Write(',predmeti[',j,']'); Readln(predmeti[j]); end; Write(d,u); end; Close(d); PROCEDURE profesori( VAR U:profesori); VAR t:integer; BEGIN Write(' vnesete ime na datotekata sto ke se otvora'); Readln(ime_na_datoteka); assign(d,ime_na_datoteka); RESET(d); i:=0; While not (E of (d)) DO BEGIN Read(d,u); i:i+1; With U DO BEGIN Writeln('podatoci za profesorot'); Readln(ime,' ',prezime); Writeln; for i:=1 to brp do BEGIN Writeln('vnesete go imeto i prezimeto na profesorot'); Write(predmeti[t],':'); Readln(profesor[t]); end; end; Write(d,u); end; Close(d); end; PROCEDURE ocenki(VAR U:podatoci); VAR k:integer; Writeln('vnesete ime na datoteka sto ke se otvara'); Readln(ime_na_datoteka); assign(d,ime_na_datoteka); RESET(d); i:=0; While not (E of (d)) DO BEGIN Read(d,u); i:i+1; With U DO BEGIN Writeln('podatoci za ocenkite na ucenikot'); Writeln(imeu,' ',prezimeu); Writeln; Prosek:=0; for k:=1 to brp do BEGIN Writeln('vnesete ocenka po:'); Write(predmeti[k],':'); Readln(ocenki[k]); Prosek:=Prosek+ocenki[k]; end; Prosek:=Prosek/brp; end; Write(d,u); end; Close(d); end; PROCEDURE pecati_dnevnik(VAR U:podatoci); VAR p:integer; BEGIN Write('vnesete ime na datotekata sto ke se otvara'); Readln(ime_na_datoteka); assign(d,ime_na_datoteka); RESET(d); i:=0; Write('vnesete go prezimeto na ucenikot');