Evo resenja prvog zadatka:
Citat:
program:
Program Radnici;
Type;
Dosije = record
mb : integer;
ime, prezime : string[20];
sifra : string;
bod : integer;
End;
Var
F : File of Dosije;
R : Dosije;
op : Char;
n : Integer;
Begin
Assign(F,'RADNIK.DAT');
Repeat
Writeln;
Writeln;
Writeln('Meni:');
Writeln;
Writeln('1 -- Dodaj novi dosije');
Writeln('2 -- Prikazi dosije');
Writeln('3 -- Prikazi celu datoteku');
Writeln('4 -- Kraj rada');
Writeln;
Write('Unesite broj opcije: ');
Readln(op);
Case op of
'1' : Begin
Reset(F);
Seek(F,FileSize(F));
Writeln;
Writeln('Unesite podatke o radniku:');
Write('MB -- '); Readln(R.mb);
Write('Ime -- '); Readln(R.ime);
Write('Prezime -- '); Readln(R.prezime);
Write('Sifra -- '); Readln(R.sifra);
Write('Br.bodova -- '); Readln(R.bod);
Write(F,R);
Close(F);
End;
'2' : Begin
Reset(F);
Writeln;
Write('Unesite redni broj dosijea -- '); Readln(n);
If n <= FileSize(F) Then
Begin
Seek(F,n-1);
Read(F,R);
Writeln('MB - ',R.mb);
Witeln('Ime i prezime - ',R.ime,', ',R.prezime);
Writeln('Sifra - ',R.sifra);
Writeln('Br.bodova - ',R.bod);
End
Else Writeln('Uneli ste prevelik broj');
Close(F);
End;
'3' : Begin
Reset(F);
Writeln;
While not Eof(F) do
Begin
Read(F,R);
Writeln(R.mb:10,R.ime:20,R.prezime:20,R.sifra:10,R.bod:10);
End;
Close(F);
End;
'4' : Writeln('Kraj rada.');
Else Writeln('Uneli ste nepostojeci broj opcije!');
End;
Until op = '4';
End.
Za drugi zadatak ces jos malo da se strpis. Dobices ga do utorka.
Pre prvog startovanja programa napravi praznu datoteku sa imenom RADNICI.DAT u istom direktorijumu sa programom, u suprotnom ce ti javljati gresku.
Ako kaniš pobjedit, nemoj izgubit!