Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Passwort Generator mit C#

Empfohlene Antworten

Veröffentlicht

Hallo alle zusammen ,

ich bin relativ neu was das programmieren mit C# angeht ich muss aber nun Folgende Aufgabenstellung lösen .

:mod:

Ich muss ein Programm schreiben das ein Passwort generiert . Folgende Anforderungen werden an die Methode gestellt:

• Die Länge des zu generierenden Passwortes beträgt minimal 4 und maximal 16 Zeichen die gewünschte Länge wird an die Methode übergeben. Wird eine Länge außerhalb des Bereiches angegeben, wird ein leeres Passwort zurückgeliefert

• Das Passwort soll aus den ASCII-Zeichen dezimal 35-38, 47-57, 65-93 und 97-122 bestehen

• Bei einer Passwortlänge bis 6 Zeichen sollen genau 2 Ziffern enthalten sein, bei einer Länge von 6 bis 10 Zeichen sollen genau 3 Ziffern enthalten sein, ab einer Länge von 10 Zeichen sollen genau 4 Ziffern enthalten sein

Hinweis: Verwende in der ASCII-Tabelle die Zeichen im Bereich 35 bis 122 und ignoriere durch geeignete Formulierung von Bedingungen die nicht erwünschten Zeichen.

Erzeuge im Hauptprogramm in einer Schleife 20 Passwörter und gebe Sie untereinander aus.

Aber Ich hab Wirklich keine Ahnung wie ich das hingekommen soll :confused:

Ich hoffe ihr könnt mir helfen :D

Sooo, eig. ist das garnicht so Schwer. Du hast dir die Anforderungen ja schon gut strukturiert aufgeschrieben.

Nun greifen wir einmal zur ASCII-Tabelle: http://www.asciitable.com/asciifull.gif

Wie sieht denn die Eingabemaske aus? Oder wird die Passwortlänge direkt im Programm reglementiert?

Ich würde mir einen Zufallsgenerator erstellen

dann brauchen wir natürlich noch eine char variable (die dann den dezimalwert übergeben bekommt(ASCII-Tabelle) --> macht daraus dann den character).


//Variablen die benötigt werden(können noch mehr sein)

Random gen = new Random();

char zeichen;

String passwort = "";

int zufallszahl = 0;

mit

zufallszahl = gen.Next(0,122);
holst du dir dann eine Zufallszahl im Bereich von 0-122. Dannach würde ich gucken ob sie in eine der Wertebereiche passt nach dem motto: (So könnte z.B. die Funktion aussehen(ist natürlich nur ein Teil ;))

zufallszahl = gen.Next(0,122);

private void neuesZeichen()

{

if((zufallszahl >=35 && zufallszahl <= 38) || (zufallszahl >=47 && zufallszahl <=57)....)

{

zeichen = zufallszahl;

passwort += zeichen;

}

else

{

neusZeichen();

}

}

Vielleicht weißt du ja jetzt ein wenig mehr wie du es realisieren kannst.

Ich hoffe es hat dir ein wenig geholfen.

Lg

Danke für deine Antwort das ganze Programm soll nur über die Konsole laufen also alle ein und ausgaben gehen über die Konsole.Und die Passwort Länge soll der Nutzer selber festlegen Können im Bereich von 4 bis 16 Zeichen.

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

namespace Passwortgenerator

{

class Reiss_Passwortgenerator

{

static string passwortgenerierung(string plänge)

{

Random rand = new Random();

int zufallswert = 0;

int plängemethode = 0;

string pvorschlag = ""; ;

int i = 0;

int zahlanzahl = 0;

plängemethode = Convert.ToInt32(plänge); // als string übergeben und dann in int konvertiert

if (plängemethode < 4 || plängemethode > 16)

{

return pvorschlag;

}

if (plänge > 10)

{

}

while (i < plängemethode)

{

zufallswert = rand.Next(35, 122); //zufallswert erzeugen und mit if überprüfen

if ((zufallswert > 35 && zufallswert < 38) || (zufallswert > 47 && zufallswert < 57) || (zufallswert > 65 && zufallswert < 93) || (zufallswert > 97 && zufallswert < 122))

{

if (zufallswert > 35 && zufallswert < 38 && zahlanzahl == 2)

{

pvorschlag = pvorschlag + Char.ConvertFromUtf32(zufallswert); //zeichen dazu addieren

Console.WriteLine(pvorschlag); //jedes zeichen wird angezeigt zur überprüfung

i++; //zählschleife addieren

zahlanzahl++; //zahlanzahl überprüfen

}

if ((zufallswert > 47 && zufallswert < 57) || (zufallswert > 65 && zufallswert < 93) || (zufallswert > 97 && zufallswert < 122))

{

pvorschlag = pvorschlag + Char.ConvertFromUtf32(zufallswert); //zeichen dazu addieren

Console.WriteLine(pvorschlag); //jedes zeichen wird angezeigt zur überprüfung

i++;

}

}

}

return pvorschlag; // wert zurückgeben

}

static void Main(string[] args)

{

string plänge;

string passwort;

Console.Write("Bitte geben Sie die gewünschte Länge Ihres Pasworts an: ");

plänge = Console.ReadLine();

passwort = passwortgenerierung(plänge);

Console.WriteLine(passwort);

Console.ReadKey();

}

}

}

ich hab es so versucht jetzt geht nur die letzte Anforderung noch nicht : Bei einer Passwortlänge bis 6 Zeichen sollen genau 2 Ziffern enthalten sein, bei einer Länge von 6 bis 10 Zeichen sollen genau 3 Ziffern enthalten sein, ab einer Länge von 10 Zeichen sollen genau 4 Ziffern enthalten sein

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.