Suche
Suche Menü

Beispiel

Entwurf eines Multiplikations-Taschenrechners

Warum und wie wir unsere Programme in Funktionen strukturieren, soll nun an einem weiteren Beispiel erklärt werden. Nehmen wir an, es soll ein einfacher Taschenrechner entwickelt werden, welcher nur die Multiplikation beherrscht.

Schritt 1: Klärung der Programm-Aktionen

In diesem Schritt soll geklärt werden, welche Aktionen das Programm besitzen soll.

  • Benutzer auffordern Eingaben zu tätigen
  • Eingabe von Zahl 1
  • Eingabe von Zahl 2
  • Ergebnis ausrechnen (Zahl 1 * Zahl 2)
  • Ergebnis ausgeben

Schritt 2: Gruppierung der Aktionen

In diesem Schritt überlegen wir, wie man diese Aktionen logisch und sinnvoll gruppieren kann. Eine allgemeine Gruppierung ist die unten aufgeführte. Je nach Komplexität des Programms ist jedoch eine feinere Gruppierung nötig.

  • Eingabe
  • Verarbeitung
  • Ausgabe

Schritt 3: Erstellen der Funktions-Prototypen

Im dritten Schritt erstellen wir die Funktions-Prototypen, für die wir Name, Rückgabewert und Parameter definieren. Da bei der Multiplikation Kommazahlen entstehen, müssen wir an allen Stellen den Datentyp float oder double verwenden.

  • float eingabeZahl();
  • float multipliziere(float zahl1, float zahl2);
  • void ausgabeErgebnis(float ergebnis);

Schritt 4: Implementierung

Wenn das Konzept schlüssig, logisch und sauber strukturiert ist, geht es um die Umsetzung – die sogenannte Implementierung. Hier ein Lösungsvorschlag:

// Multiplikations-Rechner / ausfuehrlich / v0.1

#include<stdio.h>

float eingabeZahl() {
	float eingabe;
	printf("\nEingabe Zahl: ");
	scanf("%f", &eingabe);
	return eingabe;
}

float multipliziere(float zahl1, float zahl2) {
	return (zahl1 * zahl2);
}

void ausgabeErgebnis(float ergebnis) {
	printf("\nErgebnis: %f\n", ergebnis);
}

int main() {
	float faktor1, faktor2, ergebnis;
	
	// Eingabe
	faktor1 = eingabeZahl();
	faktor2 = eingabeZahl();

	// Verarbeitung
	ergebnis = multipliziere(faktor1, faktor2);

	// Ausgabe
	ausgabeErgebnis(ergebnis);

	return 0;
}

Eingabe Zahl: 2

Eingabe Zahl: 4.4

Ergebnis: 8.800000