Moin,
ich arbeite mich gerade in die C# Programmierung ein und bräuchte mal eure Hilfe bitte.
Ich schreibe eine Konsolenanwendung, wo der Benutzer aufgefordert wird ein 8 stellige PW einzugeben.
Das Programm soll prüfen, ob mindestens 1 Großbuchstabe, mindestens 1 Kleinbuchstabe, mindestens 1 Sonderzeichen und 2 Ziffern vorkommen.
Mir ist bewusst was ich prüfen will, weiß aber nicht wie ich das genau anwende in der for-schleife. die Bedingung ist dort für mich noch nicht so nachvollziehbar.
public void PasswortChecker()
{
int PasswortBuchstabe = 0;
int AnzahlGroßbuchstaben = 0;
int AnzahlKleinbuchstaben = 0;
int AnzahlSonderzeichen = 0;
int AnzahlZiffern = 0;
Console.WriteLine("Das Passwort muss folgende Kriterien erfüllen: ");
Console.WriteLine("tmindestens 1 Großbuchstabenntmindestens 1 Kleinbuchstabenntmindestens 2 Ziffernntmindestens 1 Sonderzeichenn");
Console.WriteLine("Bitte ein 8 stelliges Passwort eingeben: ");
string passwort = Console.ReadLine();
string [] groß = { "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "Ä", "Ö", "Ü"};
string [] klein = { "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "ö", "ä", "ü" };
string [] sonder = { "!", "§", "$", "%", "&", "/", "(", ")", "=", "?", "`", "´", "*", "+", "#", "_", "-", ":", ".", ";", ",", "" };
int[] ziffern = new int[] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
//if (passwort.Length == 8 && AnzahlGroßbuchstaben >= 1 && AnzahlKleinbuchstaben >= 1 && AnzahlSonderzeichen >= 1 && AnzahlZiffern >= 1)
for (int i = 0; i < passwort.Length; i++)
{
for (int j = 0; AnzahlGroßbuchstaben > j; j++)
{
}
//for (int k = 0; AnzahlKleinbuchstaben > k; k++)
//{
//}
//for (int l = 0; AnzahlSonderzeichen > l; l++)
//{
//}
//for (int m = 0; AnzahlZiffern > m; m++)
//{
//}
}
Console.WriteLine("Das eingegebene Passwort {0} erfüllt alle Kriterien", passwort);
}
// da man es schlecht sehen kann, die 1. for schleife ist die äußerste schleife, die anderen 4 stehen auf einer ebene in der 1. schleife.
ich arbeite mich gerade in die C# Programmierung ein und bräuchte mal eure Hilfe bitte.
Ich schreibe eine Konsolenanwendung, wo der Benutzer aufgefordert wird ein 8 stellige PW einzugeben.
Das Programm soll prüfen, ob mindestens 1 Großbuchstabe, mindestens 1 Kleinbuchstabe, mindestens 1 Sonderzeichen und 2 Ziffern vorkommen.
Mir ist bewusst was ich prüfen will, weiß aber nicht wie ich das genau anwende in der for-schleife. die Bedingung ist dort für mich noch nicht so nachvollziehbar.
public void PasswortChecker()
{
int PasswortBuchstabe = 0;
int AnzahlGroßbuchstaben = 0;
int AnzahlKleinbuchstaben = 0;
int AnzahlSonderzeichen = 0;
int AnzahlZiffern = 0;
Console.WriteLine("Das Passwort muss folgende Kriterien erfüllen: ");
Console.WriteLine("tmindestens 1 Großbuchstabenntmindestens 1 Kleinbuchstabenntmindestens 2 Ziffernntmindestens 1 Sonderzeichenn");
Console.WriteLine("Bitte ein 8 stelliges Passwort eingeben: ");
string passwort = Console.ReadLine();
string [] groß = { "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "Ä", "Ö", "Ü"};
string [] klein = { "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "ö", "ä", "ü" };
string [] sonder = { "!", "§", "$", "%", "&", "/", "(", ")", "=", "?", "`", "´", "*", "+", "#", "_", "-", ":", ".", ";", ",", "" };
int[] ziffern = new int[] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
//if (passwort.Length == 8 && AnzahlGroßbuchstaben >= 1 && AnzahlKleinbuchstaben >= 1 && AnzahlSonderzeichen >= 1 && AnzahlZiffern >= 1)
for (int i = 0; i < passwort.Length; i++)
{
for (int j = 0; AnzahlGroßbuchstaben > j; j++)
{
}
//for (int k = 0; AnzahlKleinbuchstaben > k; k++)
//{
//}
//for (int l = 0; AnzahlSonderzeichen > l; l++)
//{
//}
//for (int m = 0; AnzahlZiffern > m; m++)
//{
//}
}
Console.WriteLine("Das eingegebene Passwort {0} erfüllt alle Kriterien", passwort);
}
// da man es schlecht sehen kann, die 1. for schleife ist die äußerste schleife, die anderen 4 stehen auf einer ebene in der 1. schleife.
Kommentar