c random number c random string generator with code examples
Lär dig hur du genererar C # slumpmässigt nummer, slumpmässigt alfabet och slumpmässig sträng som innehåller specialtecken i denna informativa C # -handledning med kodexempel:
Det finns scenarier där vi är skyldiga att generera slumptal, alfabet, tecken etc. För att uppnå detta har vi slumpmässig klass tillgänglig i systemets namnområde.
Den slumpmässiga klassen låter dig slumpmässigt generera ett heltal. Med denna slumpmässiga klass kan man generera en annan uppsättning siffror / tecken. Vi kommer att diskutera detta vidare i denna handledning.
=> Se upp hela C # -träningsserien här
Vad du kommer att lära dig:
- Hur genererar jag slumpmässigt heltal i C #?
- Hur genererar jag slumpmässiga alfabet?
- Skapa slumpmässiga alfanumeriska strängar med specialtecken
- Slutsats
Hur genererar jag slumpmässigt heltal i C #?
Den slumpmässiga klassen erbjuder tre överbelastningsmetoder för att generera heltal baserat på parametern som tillhandahålls av användaren. Låt oss ta en titt på alla tre metoderna.
Använda C # Random.Next ()
Nästa innehåller tre överbelastningar:
Nästa () utan argument
Den första överbelastningen för Random.Next () kräver inget argument. Det returnerar ett icke-negativt heltalvärde.
Exempel:
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(); } }
Utgången från ovanstående program kommer att vara ett icke-negativt slumpmässigt värde:
Produktion
Det genererade slumptalet är: 157909285
Nästa () Med ett argument
Nästa överbelastning för Random.Next () accepterar ett argument. Argumentet som anges anger det maximala värdet som kan genereras av metoden. Maxvärdet bör vara antingen större än eller lika med noll. Det returnerar ett icke-negativt heltal med maxvärdet som argumentet från användaren.
Exempel:
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(); } }
Utgången från ovanstående program genererar ett heltal större än noll och mindre än det maximala värde som anges, dvs. 1000.
Produktion
Slumptalet som genereras av Random.Next (argument) är: 574
var kan jag titta på anime online
Nästa () med två argument
Slumpmässig klass används för att simulera en slumpmässig händelse. För att skapa ett slumpmässigt tecken använder vi Nästa (). Nästa () accepterar två argument, det första är det minsta och inkluderande värdet som tillåts för slumpgeneratorn.
Det andra argumentet accepterar det maximala exklusiva värdet. Ett maximalt exklusivt värde betyder att värdet som skickas i det andra argumentet aldrig kommer att genereras. Det genererade värdet kommer alltid att vara mindre än maxvärdet.
Låt oss titta på ett enkelt 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(); } }
Utmatningen från ovanstående program kommer att producera ett värde mellan det givna intervallet, dvs. mellan 10 och 1000 där minimivärdet, dvs.
Produktion
time () -funktion c ++
Slumptalet som genereras av Random.Next (minVal, maxVal) är: 137
I exemplet ovan diskuterade vi hur man genererar ett slumpmässigt heltal. Men om du vill skapa ett slumpmässigt alfabet använder vi slumpmässig klass.
Hur genererar jag slumpmässiga alfabet?
Vi kan skapa ett slumpmässigt alfabet med hjälp av slumpmässig klass. Även om slumpmässig klass bara returnerar ett heltal kan vi använda det för att generera slumpmässiga alfabet.
Det enklaste sättet att göra det är att kombinera 'ElementAt' -metoden med Random.Next () för att påpeka placeringen av ett slumpmässigt alfabet från alfabetserien.
Exempel:
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 Resultatet från ovanstående program kommer att vara:
Det slumpmässiga alfabetet som genereras är: icysjd
Kodförklaring
I likhet med våra tidigare exempel skapade vi här ett slumpmässigt objekt. Sedan lagrade vi alla alfabet i en sträng, dvs Sträng b. Vi definierade en variabel som kallas 'längd' av heltalstyp som anger antalet tecken som krävs i en slumpmässigt genererad sträng.
Vi initialiserade tom sträng slumpmässigt, där vi kommer att lagra våra alfabet. Sedan skrev vi en for loop. Inuti for-slingan använde vi Random.Next () för att generera ett slumpmässigt nummer mindre än 26 eftersom antalet alfabet som vi lagrade i Sträng b är 26. Du kan också andra nummer beroende på kravet.
Följaktligen kommer int a att generera ett slumpmässigt tal under varje loopcykel, då kommer detta nummer att användas som en positionsindikator för att få karaktären den positionen med ElementAt (). Detta ger en slumpmässig karaktär varje gång slingan går.
Sedan lägger vi till tecknen tillsammans i varje loopcykel och vi får den önskade strängen med den angivna längden.
Skapa slumpmässiga alfanumeriska strängar med specialtecken
För att generera en alfanumerisk sträng med ett specialtecken liknar det enklaste sättet det vi diskuterade i exemplet ovan. Vi måste lägga till siffror och specialtecken till den givna variabeln från vilken den kan plocka upp slumpmässiga värden.
Men eftersom programmet slumpmässigt tar upp tecken kan det finnas en chans att det inte väljer något. Om din programutgång kräver en obligatorisk specialtecken är det lite knepigt. Låt oss diskutera ett program för att generera alfanumerisk text med obligatoriska specialtecken.
Följande program genererar en 8-siffrig slumpmässig alfanumerisk utgång med de två sista siffrorna som specialtecken.
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 Resultatet från ovanstående program kommer att vara:
Det slumpmässiga alfabetet som genereras är: 718mzl ~ ^
Kodförklaring
I ovanstående program använde vi samma logik som vi följde i det sista exemplet. Tillsammans med variabeln som innehåller alfanumeriska tecken skapade vi också en annan strängvariabel med specialtecken.
Sedan körde vi en for-loop för att generera ett 6-siffrigt alfanumeriskt tecken, liknande det vi gjorde i vårt tidigare problem. Vi skrev också en annan för loop som genererade två slumpmässiga specialtecken från den givna strängen. De specialtecken som genererades bifogades med den slumpmässiga strängen som vi förklarade i början av programmet.
Detta gav en 8-siffrig utgång med 6 alfanumeriska tecken och de två sista specialtecknen. Du gör lite finjustering för att skapa strängar enligt ditt eget behov.
Konsoliderat 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 resultat
Slumptalet som genereras av Random.Next () är: 1497664941
Slumptalet som genereras av Random.Next (argument) är: 8
Slumptalet som genereras av Random.Next (argument1, argument2) är: 92
Det slumpmässiga alfabetet som genereras är: b173gq # *
Slutsats
Den slumpmässiga klassen finns i systemnamnsområdet i C #.
Den har tre överbelastningsmetoder som gör det möjligt för användaren att generera ett slumpmässigt heltal baserat på de värden som tillhandahålls genom argumentet. Slumpmässig klass är inte det perfekta sättet att generera ett slumpmässigt värde utan är det enklaste sättet att uppnå det.
=> Läs igenom C # -guiden för nybörjare här
Rekommenderad läsning
- C # Stränghandledning - Strängmetoder med kodexempel
- Java String med String Buffer och String Builder Tutorial
- C # Exception Handling Tutorial med kodexempel
- Python-strängfunktioner
- C # -funktioner / metodhandledning med kodexempel
- Skapa Mocks and Spies i Mockito med kodexempel
- Strängar i C ++ med exempel
- Python String Split Tutorial