c random number c random string generator with code examples
Apreneu a generar un número aleatori C #, un alfabet aleatori i una cadena aleatòria que contenen caràcters especials en aquest tutorial informatiu de C # amb exemples de codi:
Hi ha escenaris en què se'ns exigeix generar nombres aleatoris, alfabets, caràcters, etc. Per aconseguir-ho, tenim classe Random disponible a l'espai de noms del sistema.
La classe aleatòria us permet generar aleatòriament un valor enter. Utilitzant aquesta classe aleatòria es pot generar un conjunt diferent de nombres / caràcters. En parlarem més endavant en aquest tutorial.
=> Mireu aquí la sèrie completa d'entrenaments C #
Què aprendreu:
- Com es genera un número enter aleatori en C #?
- Com es generen alfabets aleatoris?
- Genereu una cadena alfanumèrica aleatòria amb caràcters especials
- Conclusió
Com es genera un número enter aleatori en C #?
La classe aleatòria ofereix tres mètodes de sobrecàrrega per generar enters basats en el paràmetre proporcionat per l'usuari. Vegem els tres mètodes.
Utilitzant C # Random.Next ()
El següent conté tres sobrecàrregues:
Next () Sense argument
La primera sobrecàrrega de Random.Next () no requereix cap argument. Retorna un valor enter no negatiu.
Exemple:
class Program { public static void Main(string[] args) { Random ran = new Random(); int a = ran.Next(); Console.WriteLine('The random number generated is: {0}', a); Console.ReadLine(); } }
La sortida del programa anterior serà qualsevol valor aleatori no negatiu:
Sortida
El nombre aleatori generat és: 157909285
Next () Amb un argument
La següent sobrecàrrega de Random.Next () accepta un argument. L'argument proporcionat especifica el valor màxim que pot generar el mètode. El valor màxim ha de ser superior o igual a zero. Retorna un enter no negatiu amb un valor màxim com a argument proporcionat per l'usuari.
Exemple:
class Program { public static void Main(string[] args) { Random ran = new Random(); int a = ran.Next(1000); Console.WriteLine('The random number generated by Random.Next(argument) is: {0}', a); Console.ReadLine(); } }
La sortida del programa anterior generarà un nombre enter superior a zero i inferior al valor màxim introduït, és a dir, 1000.
Sortida
El nombre aleatori generat per Random.Next (argument) és: 574
ups conceptes en c # amb exemples per a usuaris experimentats
Next () Amb dos arguments
La classe aleatòria s’utilitza per simular un esdeveniment aleatori. Per generar un caràcter aleatori, fem servir Next (). El següent () accepta dos arguments, el primer és el valor mínim i inclusiu permès per al generador aleatori.
El segon argument accepta el màxim valor exclusiu. Un valor exclusiu màxim significa que mai no es generarà el valor passat al segon argument. El valor generat sempre serà inferior al valor màxim.
Vegem un programa senzill:
class Program { public static void Main(string[] args) { Random ran = new Random(); int a = ran.Next(10, 1000); Console.WriteLine('The random number generated by Random.Next(minVal, maxVal) is: {0}', a); Console.ReadLine(); } }
La sortida del programa anterior produirà un valor entre l’interval donat, és a dir, entre 10 i 1000, on el valor mínim, és a dir, 10 és inclòs.
Sortida
El nombre aleatori generat per Random.Next (minVal, maxVal) és: 137
A l'exemple anterior, es va discutir com generar un nombre enter aleatori. Però en cas que vulgueu generar un alfabet aleatori, utilitzarem la classe Random.
Com es generen alfabets aleatoris?
Podem generar un alfabet aleatori mitjançant la classe aleatòria. Tot i que la classe Random només retorna un nombre enter, podem utilitzar-la per generar alfabets aleatoris.
La forma més senzilla de fer-ho és combinar el mètode 'ElementAt' amb Random.Next () per assenyalar la posició d'un alfabet aleatori de la sèrie d'alfabets.
Exemple:
class Program { public static void Main(string[] args) { Random ran = new Random(); String b = 'abcdefghijklmnopqrstuvwxyz'; int length = 6; String random = ''; for(int i =0; i La sortida del programa anterior serà:
L'alfabet aleatori generat és: icysjd
Explicació del codi
Similar als nostres exemples anteriors, aquí vam crear un objecte Random. Després hem emmagatzemat tots els alfabets en una cadena, és a dir, la cadena b. Hem definit una variable anomenada 'longitud' de tipus enter que denotarà el nombre de caràcters necessaris en una cadena generada aleatòriament.
Vam inicialitzar una cadena buida aleatòria, on desarem els nostres alfabets. Després vam escriure un bucle for. Dins del bucle for hem utilitzat Random.Next () per generar un nombre aleatori inferior a 26 perquè el nombre d’alfabet que hem emmagatzemat a la cadena b és 26. També podeu fer altres números segons el requisit.
Per tant, l’int a tindrà un número aleatori generat durant cada cicle de bucle, llavors aquest número s’utilitzarà com a indicador de posició per obtenir el caràcter d’aquesta posició mitjançant ElementAt (). Això donarà un caràcter aleatori cada vegada que s'executa el bucle.
A continuació, afegirem els caràcters junts a cada cicle de bucle i obtindrem la cadena necessària amb la longitud donada.
Genereu una cadena alfanumèrica aleatòria amb caràcters especials
Per generar una cadena alfanumèrica amb un caràcter especial, la forma més senzilla és similar a la que hem comentat a l'exemple anterior. Haurem d’afegir els números i els caràcters especials a la variable donada a partir de la qual pugui agafar valors aleatoris.
Però com que el programa recollirà personatges a l’atzar, és possible que hi hagi possibilitat que no triï res. Si la sortida del programa requereix tenir un caràcter especial obligatori, és una mica complicat. Parlem d’un programa per generar text alfanumèric amb caràcters especials obligatoris.
El programa següent generarà una sortida alfanumèrica aleatòria de 8 dígits amb els dos darrers dígits com a caràcters especials.
class Program { public static void Main(string[] args) { Random ran = new Random(); String b = 'abcdefghijklmnopqrstuvwxyz0123456789'; String sc = '!@#$%^&*~'; int length = 6; String random = ''; for(int i =0; i La sortida del programa anterior serà:
L'alfabet aleatori generat és: 718 mzl ~ ^
Explicació del codi
el millor optimitzador de sistema gratuït de Windows 10
Al programa anterior, hem utilitzat la mateixa lògica que hem seguit a l'últim exemple. Juntament amb la variable que conté caràcters alfanumèrics, també hem creat una altra variable de cadena amb caràcters especials.
Després vam executar un bucle for per generar un caràcter alfanumèric de 6 dígits, similar al que vam fer en el nostre problema anterior. També en vam escriure un altre per a bucle que va generar 2 caràcters especials aleatoris a partir de la cadena donada. Els caràcters especials generats es van afegir amb la cadena aleatòria que vam declarar al començament del programa.
Això va produir una sortida de 8 dígits amb 6 caràcters alfanumèrics i els dos darrers caràcters especials. Feu una petita modificació per generar cadenes segons el vostre propi requisit.
Programa consolidat
class Program { public static void Main(string[] args) { Random ran = new Random(); //Output for Random.Next() Console.WriteLine('The random number generated by Random.Next() is: {0}', ran.Next()); //Output for Random.Next(argument) with max value limit Console.WriteLine('The random number generated by Random.Next(argument) is: {0}', ran.Next(10)); //Output for Random.Next(argument1, argument2) with max and min value limit Console.WriteLine('The random number generated by Random.Next(argument1, argument2) is: {0}', ran.Next(10, 100)); String b = 'abcdefghijklmnopqrstuvwxyz0123456789'; String sc = '!@#$%^&*~'; int length = 6; String random = ''; for(int i =0; i La sortida del programa
El nombre aleatori generat per Random.Next () és: 1497664941
El nombre aleatori generat per Random.Next (argument) és: 8
El nombre aleatori generat per Random.Next (argument1, argument2) és: 92
L'alfabet aleatori generat és: b173gq # *
Conclusió
La classe Random està present dins de l'espai de noms del sistema en C #.
Té tres mètodes de sobrecàrrega, que permeten a l'usuari generar un enter aleatori basat en els valors proporcionats a través de l'argument. La classe aleatòria no és la manera perfecta de generar un valor aleatori, sinó la forma més senzilla d’aconseguir-lo.
=> Llegiu aquí la guia C # per a principiants
Lectura recomanada
- Tutorial de cadenes C #: mètodes de cadenes amb exemples de codi
- Java String amb buffer de cadenes i tutorial de Generador de cadenes
- Tutorial de maneig d'excepcions C # amb exemples de codi
- Funcions de cadena de Python
- C # Funcions / Mètodes Tutorial amb exemples de codi
- Creació de simulacres i espies a Mockito amb exemples de codi
- Cadenes en C ++ amb exemples
- Tutorial de Python String Split