Wiederholung: Modularer Taschenrechner
Teil des Abschnitts Objektorientierte Programmierung der C-Journey von Coddy. Lektion 5 von 61.
Aufgabe
EinfachErstellen wir einen modularen Taschenrechner, der grundlegende arithmetische Operationen ausführt und auf drei Dateien verteilt ist, um alles zu üben, was du über modulare Programmierung in C gelernt hast.
Du wirst drei Dateien erstellen:
calc.h: Deine Header-Datei, die drei Taschenrechnerfunktionen deklariert:add,subtractundmultiply. Jede Funktion nimmt zwei Ganzzahlen entgegen und gibt eine Ganzzahl zurück. Schütze deinen Header mit Include-Guards unter Verwendung des SymbolsCALC_H.calc.c: Deine Quelldatei, die die Implementierungen aller drei Operationen enthält. Denke daran, deinen eigenen Header einzubinden, damit Deklarationen und Definitionen synchron bleiben.main.c: Deine Hauptdatei, die den Header einbindet und die Taschenrechnerfunktionen verwendet, um Operationen basierend auf der Eingabe auszuführen.
Du erhältst drei ganzzahlige Eingaben: a, b und c.
Führe in deiner Hauptfunktion die folgenden Berechnungen durch und gib jedes Ergebnis in einer separaten Zeile aus:
- Die Summe von
aundb - Das Ergebnis der Subtraktion von
cvona - Das Produkt von
bundc
Gib die Ergebnisse in diesem Format aus:
Sum: {result}
Difference: {result}
Product: {result}Bei den Eingaben 10, 5 und 3 würde die Ausgabe beispielsweise folgendermaßen aussehen:
Sum: 15
Difference: 7
Product: 15Probier es selbst
#include <stdio.h>
#include "calc.h"
int main() {
int a, b, c;
scanf("%d", &a);
scanf("%d", &b);
scanf("%d", &c);
// TODO: Berechne die Summe von a und b mit der add-Funktion
// TODO: Berechne die Differenz von a minus c mit der subtract-Funktion
// TODO: Berechne das Produkt von b und c mit der multiply-Funktion
// TODO: Gib die Ergebnisse im erforderlichen Format aus:
// Sum: {result}
// Difference: {result}
// Product: {result}
return 0;
}
Alle Lektionen in Objektorientierte Programmierung
1Grundlagen der modularen Programmierung
Header-DateienInclude GuardsQuelldateienStatische FunktionenWiederholung: Modularer Taschenrechner4Kapselung
Konzept der Opaque PointersOpaque Structs definierenGetter und SetterValidierung in SetternRückblick: Die geheime Box2Objekte und Methoden
Structs als ObjekteDer 'Self'-PointerConst-CorrectnessPointer vs. WertHilfsmethodenZusammenfassung: Point Manager5Projekt: Einfaches Bankkonto
Projekt-SetupImplementierung des Kontos3Objekt-Lebenszyklus
Konstruktor-MusterDestruktor-MusterStack-InitialisierungTiefe KopieRückblick: String-Wrapper6Vererbung durch Komposition
Struct-EinbettungDie First-Member-RegelZugriff auf Parent-MemberUpcastingRückblick: Formenhierarchie9Projekt: Formen-Zeichner
ProjektübersichtKreis-ImplementierungRechteck-ImplementierungPolymorphe VerwendungShape-ContainerÜbe selbstständig: Online-C-Compiler