how to generate random integers without using built-in functions?
Afficher commentaires plus anciens
Hello,
I'm kind of stuck on this question and I'd appreciate the help.
Write a function permutation that will receive a positive integer n as an input argument. The function will return a vector of size n , where the elements of the vector are the positive integers from 1 to n , in random order. Each number from 1 to n should appear only once. You are required to use the programming method (loops, conditional statements). You are NOT allowed to use the following built-in Matlab functions: perms, randperm, randsample .
My code uses randperm and I don't know how I can write a code without using this builtin function.
Code:
function vec = permutation(n) vec = 1:n; index = 1:n; while any(vec == index); vec = vec(randperm(n)); end
end
Réponse acceptée
Plus de réponses (1)
Walter Roberson
le 5 Déc 2016
0 votes
Hint: read the randperm source code
Catégories
En savoir plus sur Creating and Concatenating Matrices dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!