PERMUTACION ALEATORIA

Este programa genera una permutación aleatoria de tamaño n

> 
> permale <- function(n) {
+     x = 1:n
+     k = n
+     if ((n <= 0) | (n != floor(n))) {
+         return("datos no apropiados")
+     }
+     while (k > 1) {
+         u = runif(1)
+         I = floor(k * u) + 1
+         s = x[k]
+         x[k] = x[I]
+         x[I] = s
+         k = k - 1
+     }
+     return(x)
+ }
> permale(10)
##  [1]  7  8  5  6  3 10  4  1  2  9
> permale(5)
## [1] 1 2 3 4 5
> permale(20)
##  [1] 11 13 15 16  6  7 20  4  2 10 14 19  8  9 18  3 17  5 12  1