Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program niz1;
- //napisati program pomocu koga se zadati niz razdvaja na dva
- //tako da u prvi niz ulaze visestruki clanovi datog niza
- //a u drugi niz jednostruki
- type
- niz = array[1..20] of integer;
- var
- n,l,k,m:integer;
- x,y,z: niz;
- procedure UnosNiza (var n:integer;var x:niz);
- var i:integer;
- begin
- write('Broj clanova niza: ');
- readln(n);
- for i:=1 to n do
- begin
- write ('x[',i,']=');
- readln(x[i]);
- end;
- end;
- procedure StampaNiza (n:integer; x:niz);
- var i:integer;
- begin
- write('Elementi niza: ');
- for i:=1 to n-1 do write (x[i],',');
- writeln(x[n]);
- end;
- procedure razdvajanje (n:integer;x:niz; var l:integer; var y:niz; var m:integer;var z:niz);
- var i,j,k:integer; R:boolean;
- begin
- l:=0;
- m:=0;
- for i:=1 to n do
- begin
- //trazimo x[i] u nizu y
- r:=false;
- for j:=1 to l do if x[i]=y[j] then r:=true;
- if not r then
- begin
- //trazenje x[i] u ostatku niza x
- j:=i+1;
- while (j<=n) and not r do
- begin
- r:=(x[i]=x[j]);
- j:=j+1;
- end;
- if r then
- begin
- l:=l+1;
- y[l]:=x[i];
- end
- else
- begin
- m:=m+1;
- z[m]:=x[i];
- end
- end
- end;
- end;
- begin
- UnosNiza(n,x);
- StampaNiza(n,x);
- razdvajanje(n,x,l,y,m,z);
- if l>0 then stampaniza(l,y) else writeln ('Niz nema clanova');
- if m>0 then stampaniza(m,z) else writeln ('Niz nema clanova');
- readln;
- end.
Add Comment
Please, Sign In to add comment