[ nermin delic @ 29.11.2008. 17:00 ] @
program permp (input,output); type niz = array [1..20] of char; var a, ta : niz; p: array [1..20] of Boolean; j,n,b: integer; odg: Boolean; odgt: char; procedure stampa; var i:integer; begin b:=b+1; if odg then begin for i:=1 to n do write(ta); writeln; end; end; procedure perm(i,m: integer); var j,k: integer; begin if i<=n then begin k:=1; if i>1 then if a=a[i-1] then k:=m; for j:=k to n do begin if p[j] then begin ta[j]:=a; p[j]:=false; perm(i+1,j+1); p[j]:=true; end end end else stampa end; begin write ('Koliko elemenata: '); readln (n); write ('Unesite elemente tako da oni'); writeln ('koji se ponavljaju budu sukcesivni'); b:=0; for j:=1 to n do begin readln(a[j]); p[j]:=true end; write ('Zelite li ispis? '); readln (odgt); odg:= not ((odgt='N') or (odgt='n')); perm(1,1); writeln ('Ukupno: ', b); end. |