Erstellen Sie Programm welches das Umrechnen zmischen Binärformat, Hexadezimalformat und Dezimalformat beherscht. Unterteilen Sie das Progrmm in Prozeduren bzw. Funktionen
Pseudocode der Hauptfunktionen:
Binärzahl nach Dezimalzahl: Beginne Für i = Länge von Binärzahl hinunter bis 1 Beginne Falls Binärzahl[Position i] = 1 dann Tabelle[Position i] = Potenz ( 2 , ( (Länge von Binärzahl) – 1) ) Sonst Tabelle[Position i] = 0 Ende (Für) Für i = 1 bis Länge von Binärzahl Beginne Summe = Summe + Tabelle[Position i] Ende(Für) Ende
Dezimalzahl nach Binärzahl: Beginne Für i = 1 bis Tabellenmaximum Beginne Falls Rest von Dezimalzahl = 0 dann Beginne Tabelle[Position i] = 0 Dezimalzahl = Dezimalzahl / 2 ohne Kommastellen Ende (Falls) Sonst Beginne Tabelle[Position i] = 1 Dezimalzahl = Dezimalzahl / 2 ohne Kommastellen Ende (Sonst) Ende (Für) Für i = Tabellenmaximum hinunter bis 1 Beginne Hilfsvariable = String von Tabelle[Position i] Binärzahl = Binärzahl + Hilfsvariable Ende (Für) Ende
Dezimal nach Hexadezimal: Beginne Solange Dezimalzahl > 0 Beginne i = i + 1 Tabelle[Position i] = Rest von Dezimalzahl / 16 Dezimalzahl = Dezimalzahl / 16 ohne Kommastellen Ende (Solange) Für j = i Hinunter bis 1 Beginne Falls Tabelle[Position j] < 10 Dann Beginne Hilfsvariable = String von Tabelle [Position j] Ergebnis = Ergebnis + Hilfsvariable Ende(Falls) Sonst Beginne Hilfsvariable = Zeichen von ASCIICODE (Tabelle[Position i] +55) Ergebnis = Ergebnis + Hilfsvariable Ende (Sonst) Ende(Für) Ende
Hexadezimal nach Dezimal Beginne Für i = Länge von (Hexadezimalzahl) hinunter bis 1 Beginne Falls (ASCII-Zahl von (Hexadezimalzahl[Position i] >96) UND ( ASCII- Zahl von (Hexadezimalzahl[Position i]<103) Dann Beginne Hexadezimalzahl[Position i] = Zeichen von ASCIICODE (ASCII-Zahl (Hexadezimalzahl[Position i] – 32) Ende(Falls) Falls (Hexadezimalzahl[Position i]<= 9)UND(Hexadezimalzahl[Position i] >= 0) Dann beginne Ergebnis = Ergebnis + (Potenz (16, (Länge von Hexadezimalzahl – i) * (ASCII- Zahl von Hexadezimalzahl – ASCII-Zahl von 0) Ende(Falls) Sonst Beginne Ergebnis = Ergebnis + (Potenz (16, (Länge von Hexadezimalzahl – i) * (ASCII- Zahl von Hexadezimalzahl – 55) Ende (Sonst) Ende(Für) Ende
Autoren: Matthias L. & Patrick C. |