Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Nico Maas, 30.10.2008 NetworkCalculator. 2 / 15 Nico Maas, 30.10.2008 Inhalt Überblick über die Software / Struktogramm Überblick über die Software /

Ähnliche Präsentationen


Präsentation zum Thema: "Nico Maas, 30.10.2008 NetworkCalculator. 2 / 15 Nico Maas, 30.10.2008 Inhalt Überblick über die Software / Struktogramm Überblick über die Software /"—  Präsentation transkript:

1 Nico Maas, 30.10.2008 NetworkCalculator

2 2 / 15 Nico Maas, 30.10.2008 Inhalt Überblick über die Software / Struktogramm Überblick über die Software / Struktogramm Aufschlüsselung & Erklärung des Quellcodes Aufschlüsselung & Erklärung des Quellcodes Quellenverzeichnis Quellenverzeichnis

3 3 / 15 Nico Maas, 30.10.2008 Struktogramm

4 4 / 15 Nico Maas, 30.10.2008 Beschreibung /* // Programmname: NetworkCalculator // Autor: Nico Maas // Revision: 1.0 // Erstellungsdatum: 28.10.2008 // Datum der letzten Änderung: 29.11.2008 // Zweck: Zeigt die Adressklasse und Standardsubnetzmaske einer IP Adresse an */ In dem Beschreibungsheader werden Notizen über die Software niedergelegt. In dem Beschreibungsheader werden Notizen über die Software niedergelegt.

5 5 / 15 Nico Maas, 30.10.2008 Header Dateien #include #include Die Header Dateien werden hinzugefügt um die Funktionen, welche in selbigen hinterlegt sind, im eigenen Programmcode benutzen zu können. Die Header Dateien werden hinzugefügt um die Funktionen, welche in selbigen hinterlegt sind, im eigenen Programmcode benutzen zu können.

6 6 / 15 Nico Maas, 30.10.2008 Variablen initialisieren int iptri1, iptri2, iptri3, iptri4; char punkt; Durch die Initalisation werden für die Variablen Platz im Speicher belegt, damit diese später Daten aufnehmen können. Durch die Initalisation werden für die Variablen Platz im Speicher belegt, damit diese später Daten aufnehmen können.

7 7 / 15 Nico Maas, 30.10.2008 Programmstart int main() { cout << "########## NetworkCalculator ##########" << endl; cout << "# Geben Sie bitte eine IP Adresse ein #" << endl; cout << "######### Format: 192.168.2.1 #########" << endl; cout << "Eingabe: "; Beim Programmstart gibt die Software einen Begrüßungsbildschirm aus und fordert zur Eingabe einer IP auf. Beim Programmstart gibt die Software einen Begrüßungsbildschirm aus und fordert zur Eingabe einer IP auf. Um den Nutzer zu unterstützen, wird das erwartete Format für die Eingabe erklärt- Um den Nutzer zu unterstützen, wird das erwartete Format für die Eingabe erklärt-

8 8 / 15 Nico Maas, 30.10.2008 Einlesen der IP Adresse cin >> iptri1 >> punkt >> iptri2 >> punkt >> iptri3 >> punkt >> iptri4; Mit dem oben stehenden Befehl wird die IP Adresse eingelesen und direkt in die passenden Triplets gespeichert. Mit dem oben stehenden Befehl wird die IP Adresse eingelesen und direkt in die passenden Triplets gespeichert. Durch die Variable Punkt wird der Punkt welche die IP Triplets trennt aus der gesamt Adresse herausgefiltert. Durch die Variable Punkt wird der Punkt welche die IP Triplets trennt aus der gesamt Adresse herausgefiltert.

9 9 / 15 Nico Maas, 30.10.2008 Überprüfung auf Adressklasse if (iptri1 > 0 & iptri1 0 & iptri1 < 128) { cout << "Die IP Adresse " << iptri1 << "." << iptri2 << "." << iptri3 << "." << iptri4 << " entspricht" << endl; cout << "Die IP Adresse " << iptri1 << "." << iptri2 << "." << iptri3 << "." << iptri4 << " entspricht" << endl; cout << "Adressklasse A: Subnetmask 255.0.0.0"; cout << "Adressklasse A: Subnetmask 255.0.0.0"; } else else Die Überprüfung wird durch geschachtelte IF Abfragen erfüllt. Wir beginnen mit der Abfrage ob das erste entscheidende Triplet zwischen 0 und 128 liegt. Die Überprüfung wird durch geschachtelte IF Abfragen erfüllt. Wir beginnen mit der Abfrage ob das erste entscheidende Triplet zwischen 0 und 128 liegt.

10 10 / 15 Nico Maas, 30.10.2008 Überprüfung auf Adressklasse if (iptri1 > 126 & iptri1 126 & iptri1 < 193) { cout << "Die IP Adresse " << iptri1 << "." << iptri2 << "." << iptri3 << "." << iptri4 << " entspricht" << endl; cout << "Die IP Adresse " << iptri1 << "." << iptri2 << "." << iptri3 << "." << iptri4 << " entspricht" << endl; cout << "Adresseklasse B: Subnetmask 255.255.0.0"; cout << "Adresseklasse B: Subnetmask 255.255.0.0"; } else else In der nachfolgenden Abfrage wird auf die Übereinstimmung mit der B Adressklasse, also erstes IP Triplet zwischen 127 und 192 überprüft. In der nachfolgenden Abfrage wird auf die Übereinstimmung mit der B Adressklasse, also erstes IP Triplet zwischen 127 und 192 überprüft.

11 11 / 15 Nico Maas, 30.10.2008 Überprüfung auf Adressklasse if (iptri1 > 191 & iptri1 191 & iptri1 < 224) { cout << "Die IP Adresse " << iptri1 << "." << iptri2 << "." << iptri3 << "." << iptri4 << " entspricht" << endl; cout << "Die IP Adresse " << iptri1 << "." << iptri2 << "." << iptri3 << "." << iptri4 << " entspricht" << endl; cout << "Adressklasse C: Subnetmask 255.255.255.0"; cout << "Adressklasse C: Subnetmask 255.255.255.0"; } In der letzten Überprüfung wird erkannt, ob die Range zwischen 192 und 223 liegt. In der letzten Überprüfung wird erkannt, ob die Range zwischen 192 und 223 liegt.

12 12 / 15 Nico Maas, 30.10.2008 Überprüfung der Adressklasse else { cout << "Die IP Adresse " << iptri1 << "." << iptri2 << "." << iptri3 << "." << iptri4 << " entspricht" << endl; cout << "Die IP Adresse " << iptri1 << "." << iptri2 << "." << iptri3 << "." << iptri4 << " entspricht" << endl; cout << "keiner erfassten Adressklasse oder ist ungueltig"; cout << "keiner erfassten Adressklasse oder ist ungueltig"; } Wenn alle Abfragen fehlschlagen, ist die Adressklasse entweder falsch erfasst oder die IP Eingabe ungültig (Eingabe von Buchstaben wird damit nicht abgefangen, Verbesserungsmöglichkeit). Wenn alle Abfragen fehlschlagen, ist die Adressklasse entweder falsch erfasst oder die IP Eingabe ungültig (Eingabe von Buchstaben wird damit nicht abgefangen, Verbesserungsmöglichkeit).

13 13 / 15 Nico Maas, 30.10.2008 Ende des Programms getchar();} Am Ende wird noch einmal getchar aufgerufen um das Fenster nach vollendeter Ausgabe und Ende des Programms offen zu halten, bzw. das Programm in Erwartung einer Eingabe offen zu halten / am laufen. Am Ende wird noch einmal getchar aufgerufen um das Fenster nach vollendeter Ausgabe und Ende des Programms offen zu halten, bzw. das Programm in Erwartung einer Eingabe offen zu halten / am laufen.

14 14 / 15 Nico Maas, 30.10.2008 Quellenverzeichnis Zur Erstellung des Struktogramms wurde die Freeware StrukEd32 in der 32 bit Version benutzt Zur Erstellung des Struktogramms wurde die Freeware StrukEd32 in der 32 bit Version benutzt Als technische Unterlagen zur Adressklasse diente das Unterrichsmaterial Als technische Unterlagen zur Adressklasse diente das Unterrichsmaterial

15 Nico Maas, 30.10.2008Ende


Herunterladen ppt "Nico Maas, 30.10.2008 NetworkCalculator. 2 / 15 Nico Maas, 30.10.2008 Inhalt Überblick über die Software / Struktogramm Überblick über die Software /"

Ähnliche Präsentationen


Google-Anzeigen