gitweb on Svarog
projekti pod git sistemom za održavanje verzija -- projects under the git version control systemdiff --git a/Cas10/PERMP.MOD b/Cas10/PERMP.MOD
--- a/Cas10/PERMP.MOD
+++ /dev/null
@@ -1,92 +0,0 @@
-MODULE PermP;\r
-\r
-FROM IO IMPORT\r
- WrStr, WrLn, WrCard, RdCard, WrChar, RdKey, OK;\r
-\r
-CONST\r
- MaxDim = 50;\r
-\r
-TYPE\r
- Niz = ARRAY [1 .. MaxDim] OF CHAR;\r
-\r
-VAR\r
- A: Niz;\r
- n: CARDINAL;\r
-\r
-PROCEDURE Unos(VAR n: CARDINAL; VAR A: Niz);\r
-VAR\r
- i: CARDINAL;\r
-BEGIN\r
- REPEAT\r
- WrStr('Unesite n (1 <= n <= ');\r
- WrCard(MaxDim, 1);\r
- WrStr(') --- ');\r
- n:= RdCard();\r
- WrLn;\r
- UNTIL OK AND (1 <= n) AND (n <= MaxDim);\r
- REPEAT\r
- WrLn;\r
- WrStr('Unesite ');\r
- WrCard(n, 1);\r
- WrStr(' slova koja treba permutovati (mogu se i ponavljati):');\r
- WrLn;\r
- WrLn;\r
- i:= 0;\r
- REPEAT\r
- INC(i);\r
- A[i]:= RdKey();\r
- WrChar(A[i])\r
- UNTIL (i = n) OR ((CAP(A[i]) < 'A') AND (CAP(A[i]) > 'Z')\r
- AND (A[i] < '0') AND (A[i] > '9'));\r
- UNTIL NOT ((CAP(A[i]) < 'A') AND (CAP(A[i]) > 'Z') AND\r
- (A[i] < '0') AND (A[i] > '9'));\r
-END Unos;\r
-\r
-PROCEDURE Permutacije(n: CARDINAL; VAR A: Niz);\r
-\r
- PROCEDURE Nadji(k: CARDINAL);\r
- VAR\r
- i, j: CARDINAL;\r
- Temp: CHAR;\r
- BEGIN\r
- IF k = 1 THEN\r
- FOR i:= 1 TO n DO\r
- WrChar(A[i]);\r
- END;\r
- WrLn;\r
- ELSE\r
- Nadji(k - 1);\r
- FOR i:= 1 TO k - 1 DO\r
- IF A[k] # A[i] THEN\r
- (* Zamenimo elemente samo ako su razliciti *)\r
- j:= 1;\r
- WHILE (j < i) AND (A[j] # A[i]) DO\r
- INC(j);\r
- END;\r
- IF j = i THEN\r
- (* A[i] nema duplikata u skupu {a[1], ... , a[i-1] *)\r
- Temp:= A[i];\r
- A[i]:= A[k];\r
- A[k]:= Temp;\r
- Nadji(k - 1);\r
- Temp:= A[i];\r
- A[i]:= A[k];\r
- A[k]:= Temp;\r
- END;\r
- END;\r
- END;\r
- END;\r
- END Nadji;\r
-\r
-BEGIN\r
- Nadji(n);\r
-END Permutacije;\r
-\r
-BEGIN \r
- Unos(n, A);\r
- WrLn;\r
- WrLn;\r
- WrStr('Permutacije: ');\r
- WrLn;\r
- Permutacije(n, A);\r
-END PermP.\r