3.939 messaggi dal 28 gennaio 2003
Ciao.
Data una stringa, vorrei generarne un'altra, coi caratteri della prima, ma mischiati casualmente.
Mi dareste una mano?
944 messaggi dal 11 febbraio 2013
Allora potresti usare un random che restituisce le posizioni dei caratteri...
No?
3.939 messaggi dal 28 gennaio 2003
se ho la stringa ABC, vorrei uno dei possibili anagrammi di questa stringa.
944 messaggi dal 11 febbraio 2013
Crea un array di char con la stessa lunghezza perché la conosci.
Fino a che la nuova stringa non è diversa e fino a che il random non ti restituisce tutte le posizioni continui il loop.

Magari la faccio facile perché sto a pranzo:)

...pero farei cosi
11.886 messaggi dal 09 febbraio 2002
Contributi
Ogni stringa è anche una collezione di char, quindi si può usare il metodo OrderBy di LINQ per riordinare i caratteri secondo un criterio casuale. Poi rimetti insieme i caratteri riordinati grazie a String.Concat. Ad esempio:
string subject = "Ciao, come stai?";
string shuffled = String.Concat(subject.OrderBy(c => Guid.NewGuid()));
Console.WriteLine(shuffled); //Stampa o?to iCs,am eiac


ciao,
Moreno

Enjoy learning and just keep making

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.