C# :: Aufgabe #83 :: Lösung #13
13 Lösungen

#83
IP Adresse validieren
Anfänger - C#
von MitoG
- 02.01.2015 um 04:38 Uhr
Schreiben sie eine Consolenanwendung die eine IP Adresse als String entgegen nimmt und validieren sie diese.
Nutzen sie dabei nur den Namespace:
"System"
Der String muss als String verarbeitet werden.
Beispiele:
"192.168.0.1" <- True
"255.255.255.255" <- True
"1.1.256.302" <- False
Nutzen sie dabei nur den Namespace:
"System"
Der String muss als String verarbeitet werden.
Beispiele:
"192.168.0.1" <- True
"255.255.255.255" <- True
"1.1.256.302" <- False
#13

von stbehl (1640 Punkte)
- 22.02.2018 um 13:55 Uhr

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace TrainYourProgrammer83 { class Program { static void Main(string[] args) { bool gültig = true; Console.WriteLine("IP-ADRESSENPRÜFUNG"); Console.Write("Geben Sie eine IP-Adresse ein, die auf Gültigkeit überprüft werden soll: "); string eingabeIP = Console.ReadLine(); //prüfen ob nur Zahlen und Punkte vorhanden if(eingabeIP.Length >= 16) { gültig = false; } else { for (int i = 0; i <= eingabeIP.Length-1; i++) { if (!(Char.IsNumber(eingabeIP[i])) && eingabeIP[i] != '.') { gültig = false; } } } //prüfen ob nur Zahlen und Punkte vorhanden ENDE if (gültig) { string[] bloecke = eingabeIP.Split('.'); for (int i = 0; i <= bloecke.Length -1; i++) { //prüfe Anzahl der Ziffern der Dezimalblöcke if (bloecke[i].Length >= 4) { gültig = false; } //prüfe Anzahl der Ziffern der Dezimalblöcke ENDE //prüfe ob 0 an erster Stelle der Dezimalblöcke deren Länge >= 2 if (bloecke[i].Length >= 2) { if (Convert.ToInt32(bloecke[i][0]) == 48) { gültig = false; } } //prüfe ob 0 an erster Stelle der Dezimalblöcke deren Länge >= 2 ENDE //prüfe ob Werte der Dezimalblöcke > 255 if (Convert.ToInt32(bloecke[i]) > 255) { gültig = false; } //prüfe ob Werte der Dezimalblöcke > 255 ENDE } } Console.WriteLine(gültig); Console.ReadKey(); } } }
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1