c random number c random string generator with code examples
Lær hvordan du genererer C # tilfældigt tal, tilfældigt alfabet og tilfældig streng med specialtegn i denne informative C # -studie med kodeeksempler:
Der er scenarier, hvor vi skal generere tilfældige tal, alfabeter, tegn osv. For at opnå dette har vi tilfældig klasse til rådighed i systemnavnet.
Den tilfældige klasse giver dig mulighed for tilfældigt at generere et heltal. Ved hjælp af denne tilfældige klasse kan man generere et andet sæt tal / tegn. Vi vil diskutere dette yderligere i denne vejledning.
=> Se den fulde C # træningsserie her
Hvad du vil lære:
- Sådan genereres tilfældigt heltal i C #?
- Sådan genereres tilfældige alfabeter?
- Generer tilfældig alfanumerisk streng med specialtegn
- Konklusion
Sådan genereres tilfældigt heltal i C #?
Den tilfældige klasse tilbyder tre overbelastningsmetoder til at generere heltal baseret på den parameter, der leveres af brugeren. Lad os se på alle tre metoder.
Brug af C # Random.Next ()
Næste indeholder tre overbelastninger:
Næste () Uden argument
Den første overbelastning for Random.Next () kræver ikke noget argument. Det returnerer en ikke-negativ heltalværdi.
Eksempel:
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(); } }
Outputtet fra ovenstående program vil være en vilkårlig ikke-negativ tilfældig værdi:
Produktion
Det genererede tilfældige tal er: 157909285
Næste () Med et argument
Næste overbelastning for Random.Next () accepterer et argument. Argumentet angiver den maksimale værdi, der kan genereres af metoden. Den maksimale værdi skal enten være større end eller lig med nul. Det returnerer et ikke-negativt heltal med den maksimale værdi som argumentet fra brugeren.
Eksempel:
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(); } }
Outputtet fra ovenstående program genererer et heltal større end nul og mindre end den maksimale indtastede værdi, dvs. 1000.
Produktion
Det tilfældige tal genereret af Random.Next (argument) er: 574
java interview spørgsmål og svar til freshers
Næste () med to argumenter
Tilfældig klasse bruges til at simulere en tilfældig begivenhed. For at generere et tilfældigt tegn bruger vi Next (). Den næste () accepterer to argumenter, den første er den tilladte minimums- og inklusivværdi for den tilfældige generator.
Det andet argument accepterer den maksimale eksklusive værdi. En maksimal eksklusiv værdi betyder, at den værdi, der sendes i det andet argument, aldrig genereres. Den genererede værdi vil altid være mindre end den maksimale værdi.
Lad os se på et simpelt program:
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(); } }
Outputtet fra ovenstående program vil producere en værdi mellem det givne interval, dvs. mellem 10 og 1000, hvor minimumsværdien, dvs. 10, er inklusive.
Produktion
Det tilfældige antal genereret af Random.Next (minVal, maxVal) er: 137
I ovenstående eksempel diskuterede vi, hvordan man genererer et tilfældigt heltal. Men hvis du vil generere et tilfældigt alfabet, bruger vi klassen Tilfældig.
Sådan genereres tilfældige alfabeter?
Vi kan generere et tilfældigt alfabet ved hjælp af den tilfældige klasse. Selvom tilfældig klasse kun returnerer et heltal, kan vi bruge det til at generere tilfældige alfabeter.
Den nemmeste måde at gøre det på er at kombinere 'ElementAt' -metoden med Random.Next () for at påpege placeringen af et tilfældigt alfabet fra alfabetserien.
Eksempel:
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 Outputet fra ovenstående program vil være:
Det genererede tilfældige alfabet er: icysjd
Kode Forklaring
I lighed med vores tidligere eksempler oprettede vi her et tilfældigt objekt. Derefter lagrede vi alle alfabeterne i en streng, dvs. streng b. Vi definerede en variabel kaldet 'længde' af heltalstype, som angiver det antal tegn, der kræves i en tilfældigt genereret streng.
Vi initialiserede tom streng tilfældigt, hvor vi gemmer vores alfabeter. Så skrev vi en for loop. Inde i for-sløjfen brugte vi Random.Next () til at generere et tilfældigt tal mindre end 26, fordi antallet af alfabeter, vi lagrede i String b er 26. Du kan også andre numre afhængigt af kravet.
Derfor vil int a have et tilfældigt tal genereret under hver sløjfecyklus, så vil dette tal blive brugt som en positionsindikator for at få tegnet den position ved hjælp af ElementAt (). Dette giver en tilfældig karakter hver gang løkken kører.
Derefter tilføjer vi tegnene sammen på hver loopcyklus, og vi får den krævede streng med den givne længde.
Generer tilfældig alfanumerisk streng med specialtegn
For at generere en alfanumerisk streng med et specielt tegn svarer den enkleste måde til den, vi diskuterede i ovenstående eksempel. Vi bliver nødt til at tilføje tal og specialtegn til den givne variabel, hvorfra den kan hente tilfældige værdier.
Men da programmet vil afhente tegn tilfældigt, kan der være en chance for, at det ikke vælger noget. Hvis dit programoutput kræver et obligatorisk specialtegn, er det lidt vanskeligt. Lad os diskutere et program til generering af alfanumerisk tekst med obligatoriske specialtegn.
hvordan man laver falske e-mail-konti
Det følgende program genererer et 8-cifret tilfældigt alfanumerisk output med de sidste to cifre som specialtegn.
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 Outputet fra ovenstående program vil være:
Det tilfældige genererede alfabet er: 718mzl ~ ^
Kode Forklaring
I ovenstående program brugte vi den samme logik, som vi fulgte i det sidste eksempel. Sammen med variablen, der indeholder alfanumeriske tegn, oprettede vi også en anden strengvariabel med specialtegn.
Derefter kørte vi en for loop for at generere en 6-cifret alfanumerisk karakter, der ligner den, vi gjorde i vores tidligere problem. Vi skrev også en anden til loop, der genererede 2 tilfældige specialtegn fra den givne streng. De genererede specialtegn blev tilføjet med den tilfældige streng, som vi erklærede i starten af programmet.
Dette producerede et 8-cifret output med 6 alfanumeriske tegn og de sidste to specialtegn. Du laver en lille finjustering af din egen for at generere strenge i henhold til dit eget krav.
Konsolideret program
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 Programmets output
Det tilfældige tal genereret af Random.Next () er: 1497664941
Det tilfældige tal genereret af Random.Next (argument) er: 8
Det tilfældige tal genereret af Random.Next (argument1, argument2) er: 92
Det genererede tilfældige alfabet er: b173gq # *
Konklusion
Den tilfældige klasse findes i systemnavneområdet i C #.
Det har tre overbelastningsmetoder, der giver brugeren mulighed for at generere et tilfældigt heltal baseret på de værdier, der er angivet gennem argumentet. Den tilfældige klasse er ikke den perfekte måde at generere en tilfældig værdi på, men er den enkleste måde at opnå den på.
=> Læs C # -guiden til begyndere her
Anbefalet læsning
- C # String Tutorial - Strengmetoder med kodeeksempler
- Java String med String Buffer og String Builder Tutorial
- C # Exception Handling Tutorial med kodeeksempler
- Python-strengfunktioner
- C # Funktioner / Metoder Vejledning med kodeeksempler
- Oprettelse af Mocks and Spies i Mockito med kodeeksempler
- Strenge i C ++ med eksempler
- Python String Split Tutorial