Forum » Programiranje » [C#] Random Password Generator
[C#] Random Password Generator
abyssus ::
V enem izmed projektov sem poskusil izdelati metodo v razredu, ki kot privzeto geslo uporabniku dodeli random geslo. Koda je takšna:
Najprej pridobim random znak, potem pa ta random znak vstavim v polje znakov, ki ga pretvorim v string. Vse ok in prav, vendar je geslo nek random znak, ki se ponavlja, recimo "ccccc". Zakaj?
Prosim za pomoč.
class Program { private static char getRandomZnak() { Random r = new Random(); int st = r.Next(0, 26); return (char)(96 + st); } private static string randomGeslo() { char[] geslo = new char[5]; for (int i = 0; i < 5; i++) { geslo[i] = getRandomZnak(); } return new string(geslo); } static void Main(string[] args) { string geslo = randomGeslo(); Console.WriteLine("Random geslo je {0}", geslo); Console.ReadLine(); } }
Najprej pridobim random znak, potem pa ta random znak vstavim v polje znakov, ki ga pretvorim v string. Vse ok in prav, vendar je geslo nek random znak, ki se ponavlja, recimo "ccccc". Zakaj?
Prosim za pomoč.
abyssus ::
Nisem prepričan, kolikor je bilo tam razloženo s strani enega uporabnika... Znova in znova nastavim seme random generatorja, ki je isto in mi zaradi tega vedno vrže enako vrednost. Če pa je izven metode pa je seme nastavljeno samo enkrat in potem uporabljeno 5x v mojem primeru. Nisem prepričan, če je tako :)
Vesoljc ::
recimo :)
seed je za vsak random object ki ga nardis v tistem loopu isti, potem pa vedno vracas prvi element iz random sekvence, ki je pac isti, zato ker je seed isti. ko nardis globalno instanco random objecta, pa potem dejansko vzemas drugacne (naslednjo) vrednosti iz random sekvence.
seed je za vsak random object ki ga nardis v tistem loopu isti, potem pa vedno vracas prvi element iz random sekvence, ki je pac isti, zato ker je seed isti. ko nardis globalno instanco random objecta, pa potem dejansko vzemas drugacne (naslednjo) vrednosti iz random sekvence.
Abnormal behavior of abnormal brain makes me normal...
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | C# povezava forma in classaOddelek: Programiranje | 2361 (1824) | Miko55 |
» | C# (strani: 1 2 )Oddelek: Programiranje | 12102 (8937) | Ericssony |
» | Generiranje kombinacij znakovOddelek: Programiranje | 1325 (1010) | c0dehunter |
» | osnove v Javi - zvezdiceOddelek: Programiranje | 3573 (2795) | Tutankhamun |