Überprüfung von Struktogrammen

248

Neues Mitglied
Hallo!

Ich lerne derzeit einige Themen für die IHK Abschlussprüfung. Als Übung habe ich mir ein kleines Programm gemacht, was Zahlen der unterschiedlichen Zahlensysteme in andere Zahlensysteme konvertiert. Das Programm umfasst Binär, Dezimal und Hexadezimal.

Zu den Methoden der folgenden Klasse "Convert" habe ich vier Struktogramme erstellt. Da wir am Anfang der Ausbildung Planungsmethoden, wie Struktogramme und Programmablaufpläne durchgenommen haben und dies schon länger her ist, habe ich dies leider nicht mehr so auf der Reihe.

Vielleicht würde sich ja einer von euch dazu bereit erklären, sich diese Struktogramme mal anzuschauen und zu bewerten. Um einen Lerneffekt zu erhalten: bitte mit Kritik. ;) Scheut euch auch nicht etwas zu schreiben, wenn ihr noch wenig Erfahrung habt. Dies kann manchmal von Vorteil sein :)

Es soll nicht um die Sauberkeit des Quellcodes gehen(Dieser wurde nur schnell hingezimmert). Ich möchte lediglich eine Bewertung der Struktogramme.

Java:
package zahlensysteme.util;

import java.util.HashMap;
import java.util.Map;

public class Convert {

	public static String convertBinToDec(String toConvert) {
		char[] input = new StringBuffer(toConvert).reverse().toString().toCharArray();
		int i = 1;
		int output = 0;

		for (char element : input) {
			output += Integer.valueOf(String.valueOf(element)) * i;
			i *= 2;
		}

		return String.valueOf(output);
	}

	public static String convertDecToBin(String toConvert) {
		int input = Integer.valueOf(toConvert);
		StringBuffer output = new StringBuffer();

		while (input > 0) {
			try {
				output.append(input % 2);
				input /= 2;
			} catch (ArithmeticException e) {
				output.append(1);
				input = 0;
			}
		}
		return output.reverse().toString();
	}

	public static String convertDecToHex(String toConvert) {
		String[] hex = new String[] { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F" };
		String output = "";
		int next = Integer.valueOf(toConvert);

		while (next > 0) {
			output += hex[next % 16];
			next /= 16;
		}
		return new StringBuffer(output).reverse().toString();
	}

	public static String convertHexToDec(String toConvert) {
		Map<Character, Integer> map = initHexMap();
		char[] input = new StringBuffer(toConvert).reverse().toString().toCharArray();
		int output = 0;
		int i = 1;

		for (char element : input) {
			output += map.get(element) * i;
			i *= 16;
		}

		return String.valueOf(output);
	}

	private static Map<Character, Integer> initHexMap() {
		Map<Character, Integer> map = new HashMap<Character, Integer>();
		map.put('0', 0);
		map.put('1', 1);
		map.put('2', 2);
		map.put('3', 3);
		map.put('4', 4);
		map.put('5', 5);
		map.put('6', 6);
		map.put('7', 7);
		map.put('8', 8);
		map.put('9', 9);
		map.put('A', 10);
		map.put('B', 11);
		map.put('C', 12);
		map.put('D', 13);
		map.put('E', 14);
		map.put('F', 15);
		return map;
	}

}

foYWbXa.png

Struktogramm 1


ez3aQC6.png

Struktogramm 2


FHQ5d3s.png

Struktogramm 3


6VOEu5m.png

Struktogramm 4


Vielen Dank im Voraus. LG und frohe Ostern :)
 

ARadauer

Top Contributor
Hat irgendjemand beruflich schon mal ein struktogramm gemacht? Ich weiß nicht warum so ein s***** noch unterrichtet wird. Stattdessen sollten sie euch lernen sauberen code zu schreiben.
 
Zuletzt bearbeitet:

248

Neues Mitglied
Ich glaube niemand hat mal wirklich praktisch Struktogramm, PAP o.Ä. verwendet. Im Betrieb planen wir alles in Dokumenten, ohne grafische Darstellung. Es wird halt einfach für die IHK Abschlussprüfung benötigt :D

Das mit dem sauberen Code ist so eine Sache, wenn man sich "nur" an die Java konventionen hält. Meiner Meinung nach müssten die etwas strikter gegeben sein. Gerade hinsichtlich Methoden und Variablennamen. Eine solche Diskussion möchte ich hier aber nicht beginnen ;).
 

Oben