Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- MODULE Zadatak1;
- FROM InOut IMPORT WriteString, ReadString, WriteLn, WriteInt;
- FROM FIO IMPORT File, Open, Close, Create, Exists, RdInt, WrCard, WrInt, WrLn;
- TYPE
- brojevi = RECORD
- niz : ARRAY [1..100] OF INTEGER;
- brojel: CARDINAL;
- END;
- String = ARRAY [1..100] OF CHAR;
- VAR
- br: brojevi;
- ime: String;
- PROCEDURE UcitajBrojeve(ime:String; VAR br:brojevi);
- VAR
- f:File;
- i:CARDINAL;
- BEGIN
- f:=Open(ime);
- br.brojel:=RdInt(f);
- FOR i:=1 TO br.brojel DO
- br.niz[i]:=RdInt(f);
- END;
- Close(f);
- END UcitajBrojeve;
- PROCEDURE SnimiBrojeve(br:brojevi);
- VAR
- f:File;
- i:CARDINAL;
- BEGIN
- WriteString("Unesite ime fajla u koji zelite da snimite niz brojeva: ");
- ReadString(ime);
- f:=Create(ime);
- WrCard(f,br.brojel,0);
- FOR i:=1 TO br.brojel DO
- WrLn(f);;
- WrInt(f,br.niz[i],0);
- END;
- WriteString("Niz brojeva je uspesno snimljen u fajl ");
- WriteString(ime);
- WriteLn;
- END SnimiBrojeve;
- PROCEDURE StampajBrojeve(br:brojevi);
- VAR
- i:CARDINAL;
- BEGIN
- WriteString("Brojevi u nizu su: ");
- WriteLn;
- FOR i:=1 TO br.brojel DO
- WriteInt(br.niz[i],0);
- WriteLn;
- END;
- END StampajBrojeve;
- PROCEDURE SortirajBrojeve(VAR br:brojevi);
- VAR
- i, j:CARDINAL;
- temp:INTEGER;
- BEGIN
- FOR i:=2 TO br.brojel DO
- temp:= br.niz[i];
- j:=i-1;
- WHILE (j>0) & (temp < br.niz[j]) DO
- br.niz[j+1]:= br.niz[j];
- DEC(j);
- END;
- br.niz[j+1]:= temp;
- END;
- WriteString("Brojevi u nizu su sortirani!");
- WriteLn;
- END SortirajBrojeve;
- BEGIN
- REPEAT
- WriteString("Unesite ime fajla u kome se nalaze brojevi: ");
- ReadString(ime);
- IF Exists(ime) THEN
- UcitajBrojeve(ime, br);
- END;
- UNTIL Exists(ime);
- StampajBrojeve(br);
- SortirajBrojeve(br);
- StampajBrojeve(br);
- SnimiBrojeve(br);
- END Zadatak1.
Add Comment
Please, Sign In to add comment