C# :: Aufgabe #77 :: Lösung #5

14 Lösungen Lösungen öffentlich
#77

Passwortgenerator mit Parametern

Anfänger - C# von pocki - 27.11.2014 um 18:11 Uhr
Erstelle ein Programm/Funktion welche/s ein zufälliges Passwort erzeugt.
Als Parameter soll die Länge sowie die Art der darin vorkommenden Zeichen übergeben werden können.
Zur Auswahl sollen stehen: Kleinbuchstaben, Großbuchstaben, Zahlen und Sonderzeichen.
Jede beliebige Kombination der Parameter soll möglich sein.
#5
vote_ok
von peterindies (440 Punkte) - 20.02.2015 um 17:40 Uhr
Quellcode ausblenden C#-Code

namespace TrainYourProgrammer
{
   using System;
   using System.Collections.Generic;

   internal class Generator
   {
      public string pwNumbers = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789^!\"§$%&/()=?{[]}\\`´+*~#',.-;:_<>|°äöüÄÖÜß";

      private readonly Random random = new Random();

      public string passwort(int passwortLength)
      {
         string finalPassword = string.Empty;
         var passwordList = new List<string>();
         for (int i = 0; i < passwortLength; i++)
         {
            passwordList.Add(pwNumbers[random.Next(pwNumbers.Length)].ToString());
         }

         foreach (string PasswordItem in passwordList)
         {
            finalPassword = finalPassword + PasswordItem;
         }

         return finalPassword;
      }
   }

   internal class Program
   {

      private static void Main(string[] args)
      {
         bool state = false;
         int result;
         var generator = new Generator();

         while (!state)
         {
            Console.WriteLine("Password Länge eingeben:");
            if (int.TryParse(Console.ReadLine(), out result))
            {
               string generatedPassword = generator.passwort(result);
               Console.WriteLine(generatedPassword);
            }
            else
            {
               Console.WriteLine("Bitte nur ganze Zahl eingeben! (max: 9999");
               state = false;
            }
         }
      }

   }
}

Kommentare:

Für diese Lösung gibt es noch keinen Kommentar

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben