Sie sind auf Seite 1von 4

main.

cpp

# include <iostream>
# include <iomanip>
# include <limits.h>
# include "myfunktions.h"
using namespace std;
int main() {
double op1, op2;
int pot, entscheidung, n;
char ro ;
system ("COLOR 0A");
pot = 1;
cout<<"Einfacher Taschenrechner mit folgenden Funktionen:" << endl
<<"Rechenmethode mit folgenden Zeichen zuweisen:" << endl
<<"Addition +"<<endl
<<"Subtraktion -"<<endl
<<"Multiplikation *"<<endl
<<"Division /"<<endl
<<"Modulofunktion %"<<endl
<<"Potenzieren ^"<<endl
<<"Ln l"<<endl<<endl;
do{
cout<<"Bitte den ersten Operanden eingeben: ";
cin>> op1;
cout<<"Bitte den Rechenoperator waehlen: ";
cin >> ro;
if (ro == '^'){
cout <<" Bitte eine Ganzzahlige Potenz eingeben: ";
cin >>pot;
cout <<"Die Rechnung lautet:"<<op1<<" "<<ro<<" "<<pot<<endl;}
else{
if (ro == 'l'){
cout <<" Bitte eine Wert fuer n eingeben: ";
cin >>n;
cout <<"Die Rechnung lautet: ln"<<op1<<endl;}

else{cout<<"Bitte den zweiten Operanden eingeben: ";


cin >> op2;
cout <<"Die Rechnung lautet:"<<op1<<" "<<ro<<" "<<op2<<endl;}}
if (ro == '+') {addition (op1,op2);}
if (ro == '-') {subtraktion (op1,op2);}
if (ro == '*') {multiplikation (op1,op2);}
if (ro == '/') {division (op1,op2);}
if (ro == '%') {modulo (op1,op2);}
if (ro == '^') {potenz (op1,pot);}
if (ro == 'l') {myLog (op1, n);}

cout << " Neue Berechnung? ja (0) / nein (1):";


cin >> entscheidung;
}
while(entscheidung != 1);

};

rechenfkt.cpp
#include <iostream>
#include <limits.h>
#include <math.h>
using namespace std;
double addition (double op1, double op2){
double ergebnis;
ergebnis = op1 + op2;
cout <<"Ergebnis = "<< ergebnis;
return ergebnis;
}
double subtraktion (double op1, double op2) {
double ergebnis;
ergebnis = op1 - op2;
cout <<"Ergebnis = "<< ergebnis;
return ergebnis;
}
double multiplikation (double op1, double op2) {
double ergebnis;
ergebnis = op1*op2;
cout <<"Ergebnis = "<< ergebnis;
return ergebnis;
}
double division ( double op1, double op2) {
double ergebnis;
if (op2 != 0){
ergebnis = op1/op2;
cout <<"Ergebnis = "<< ergebnis;}
else{
cout << "Division durch Null nicht möglich"<<endl;
}
return ergebnis;
}
double modulo (int op1,int op2) {
int ergebnis;
if(op2 != 0){
ergebnis = op1 % op2;
cout <<"Ergebnis = "<< ergebnis;}
else
cout << "Division dur Null nicht moeglich" << endl;
return ergebnis;
}
double potenz (double op1, int pot){
double ergebnis;
int limit;
ergebnis = 1;
limit = 1;
if (pot != 0 ){
do {
ergebnis = ergebnis * op1;
limit++;
}while(limit<=pot);
}
else{
ergebnis = 1;
}
cout <<"Ergebnis = "<< ergebnis;
return ergebnis;
}
double myLog (double x, int n) {
double ergebnis,te1,te2;
int pot, limit, limit1;
limit1 = 1;
ergebnis = 0;
do{
pot = (2*n)+1;
te1 = x-1;
limit = 1;
do {
te1 = te1 * te1;
limit++;
}
while(limit<=pot);
te2 = x+1;
limit = 1;
do {
te2 = te2 * te1;
limit++;
}
while(limit<=pot);
ergebnis = ergebnis + (te1/(pot*te2));
limit1++;
}while (limit <=n);
cout<< "Das Ergebnis ist: "<< ergebnis<< endl;
return ergebnis;
}

myfunktions.h
double addition (double op1, double op2); //Fkt für addit
ion
double subtraktion (double op1, double op2); // Fkt für Subtraktion
double multiplikation (double op1, double op2); // Fkt für Multiplikation
double division ( double op1, double op2); // Fkt für Divisio
n
double modulo (int op1,int op2); // Fkt für Modu
lofunktion
double potenz (double op1, int pot); // Fkt zum potenzieren
double myLog (double x, int n); // Fkt zum lösen
des natürlichen Logarithmus