Hey,
ich bräuchte mal Hilfe beim Auslagern und erstellen von Funktionen und war hab ich das hier
#include <iostream>
using namespace std;
struct Bruch {
int a; //Zaehler
int b; //Nenner
};
int main () {
int x;
struct Bruch op1 = {0,1}, op2 = {0,1};
struct Bruch Erg_n;
cout << "Operation eingeben +,-,*,/" << endl;
cin >> x;
cout << "Zeahler und Nenner eingeben:" << endl;
cin >> op1.a >> op1.b;
cout << "Zeahler und Nenner eingeben:" << endl;
cin >> op2.a >> op2.b;
// Addition
if ( x == 1) {
Erg_n.b = op1.b*op2.b;
Erg_n.a = op1.a*op2.b + op2.a*op1.b;
}
// Subtraktion
if ( x == 2) {
Erg_n.b = op1.b*op2.b;
Erg_n.a = op1.a*op2.b - op2.a*op1.b;
}
// Multiplikation
if ( x == 3) {
Erg_n.b = op1.b*op2.b;
Erg_n.a = op1.a*op2.a;
}
// Division
if ( x == 4) {
Erg_n.b = op1.b*op2.a;
Erg_n.a = op1.a*op2.b;
}
int r;
int z=Erg_n.a;
int q=Erg_n.b;
do {
r = z%q;
z = q;
q = r;
} while (q !=0);
cout << Erg_n.a/z << " / " << Erg_n.b/z << endl;
return (0);
}
Normaler Taschenrechner mit kürzen usw.
Nun hab ich folgende Aufgabenstgellung
Arbeiten Sie Ihre Lösung so um, dass das Kürzen und die Grundrechenarten in Funktionen ausgelagert werden. Schreiben Sie die Funktionsdefinitionen in eine separate Implementierungsdatei (z.B. bruch_fun.cpp) und die unktionsprototypen in eine separate Headerdatei (z.B. bruch_fun.h)!
Verwenden Sie folgende Funktionssignaturen:
bruch bplus(bruch x, bruch y)
bruch bminus(bruch x, bruch y)
bruch bmal(bruch x, bruch y)
bruch bdurch(bruch x, bruch y)
void bkuerzen (bruch &x)
Nur versteh ich ned was ich da machen muss. Kann mir da jemand helfen?
ich bräuchte mal Hilfe beim Auslagern und erstellen von Funktionen und war hab ich das hier
#include <iostream>
using namespace std;
struct Bruch {
int a; //Zaehler
int b; //Nenner
};
int main () {
int x;
struct Bruch op1 = {0,1}, op2 = {0,1};
struct Bruch Erg_n;
cout << "Operation eingeben +,-,*,/" << endl;
cin >> x;
cout << "Zeahler und Nenner eingeben:" << endl;
cin >> op1.a >> op1.b;
cout << "Zeahler und Nenner eingeben:" << endl;
cin >> op2.a >> op2.b;
// Addition
if ( x == 1) {
Erg_n.b = op1.b*op2.b;
Erg_n.a = op1.a*op2.b + op2.a*op1.b;
}
// Subtraktion
if ( x == 2) {
Erg_n.b = op1.b*op2.b;
Erg_n.a = op1.a*op2.b - op2.a*op1.b;
}
// Multiplikation
if ( x == 3) {
Erg_n.b = op1.b*op2.b;
Erg_n.a = op1.a*op2.a;
}
// Division
if ( x == 4) {
Erg_n.b = op1.b*op2.a;
Erg_n.a = op1.a*op2.b;
}
int r;
int z=Erg_n.a;
int q=Erg_n.b;
do {
r = z%q;
z = q;
q = r;
} while (q !=0);
cout << Erg_n.a/z << " / " << Erg_n.b/z << endl;
return (0);
}
Normaler Taschenrechner mit kürzen usw.
Nun hab ich folgende Aufgabenstgellung
Arbeiten Sie Ihre Lösung so um, dass das Kürzen und die Grundrechenarten in Funktionen ausgelagert werden. Schreiben Sie die Funktionsdefinitionen in eine separate Implementierungsdatei (z.B. bruch_fun.cpp) und die unktionsprototypen in eine separate Headerdatei (z.B. bruch_fun.h)!
Verwenden Sie folgende Funktionssignaturen:
bruch bplus(bruch x, bruch y)
bruch bminus(bruch x, bruch y)
bruch bmal(bruch x, bruch y)
bruch bdurch(bruch x, bruch y)
void bkuerzen (bruch &x)
Nur versteh ich ned was ich da machen muss. Kann mir da jemand helfen?