Vererbung_Aufgabe_1
Mesic_Beispiel_25_mit_Klassen.cpp@5:0c5eeee1465b, 2020-04-28 (annotated)
- Committer:
- mirzamesic
- Date:
- Tue Apr 28 14:46:56 2020 +0000
- Revision:
- 5:0c5eeee1465b
- Parent:
- 4:9df439d3eee8
Ver2
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
mirzamesic | 4:9df439d3eee8 | 1 | /* |
mirzamesic | 4:9df439d3eee8 | 2 | Schreibe eine eigene Klasse, die für dich das Rechnen übernimmt: |
mirzamesic | 4:9df439d3eee8 | 3 | -Funktionen für Addition, Multiplikation, Subtraktion, Division |
mirzamesic | 4:9df439d3eee8 | 4 | -Achte darauf, dass Bei der Divison nicht durch 0 geteilt werden darf! |
mirzamesic | 4:9df439d3eee8 | 5 | -Die Funktionen sollten Float Werte entgegen nehmen, damit du auch Kommerzahlen berechnen kannst |
mirzamesic | 4:9df439d3eee8 | 6 | |
mirzamesic | 4:9df439d3eee8 | 7 | |
mirzamesic | 4:9df439d3eee8 | 8 | Im eingentlichen Programm sollst du dann mit z.B. mit einer switch abfrage die Eingabe verwalten und zu den Richtigen funktionen schicken. |
mirzamesic | 4:9df439d3eee8 | 9 | |
mirzamesic | 4:9df439d3eee8 | 10 | Eine bespiel in der Konsole: |
mirzamesic | 4:9df439d3eee8 | 11 | Konsolenausgabe: |
mirzamesic | 4:9df439d3eee8 | 12 | |
mirzamesic | 4:9df439d3eee8 | 13 | |
mirzamesic | 4:9df439d3eee8 | 14 | Erste Zahl: 1.215 |
mirzamesic | 4:9df439d3eee8 | 15 | Operator: / |
mirzamesic | 4:9df439d3eee8 | 16 | Zweite Zahl: 1.124 |
mirzamesic | 4:9df439d3eee8 | 17 | |
mirzamesic | 4:9df439d3eee8 | 18 | Ergebnis: 1.08096 |
mirzamesic | 4:9df439d3eee8 | 19 | |
mirzamesic | 4:9df439d3eee8 | 20 | Drücken Sie eine beliebige Taste... |
mirzamesic | 4:9df439d3eee8 | 21 | |
mirzamesic | 4:9df439d3eee8 | 22 | |
mirzamesic | 4:9df439d3eee8 | 23 | */ |
mirzamesic | 4:9df439d3eee8 | 24 | |
mirzamesic | 2:9014a27dde66 | 25 | #include <stdio.h> |
mirzamesic | 2:9014a27dde66 | 26 | #include <iostream> |
mirzamesic | 2:9014a27dde66 | 27 | using namespace std; |
mirzamesic | 2:9014a27dde66 | 28 | |
mirzamesic | 2:9014a27dde66 | 29 | |
mirzamesic | 2:9014a27dde66 | 30 | |
mirzamesic | 2:9014a27dde66 | 31 | |
mirzamesic | 2:9014a27dde66 | 32 | class Rechnen //Meine Klasse |
mirzamesic | 2:9014a27dde66 | 33 | { |
mirzamesic | 2:9014a27dde66 | 34 | |
mirzamesic | 2:9014a27dde66 | 35 | public: |
mirzamesic | 2:9014a27dde66 | 36 | float addieren(float a, float b); //alle sind public |
mirzamesic | 2:9014a27dde66 | 37 | float subtrahieren(float a, float b); |
mirzamesic | 2:9014a27dde66 | 38 | float multiplizieren(float a, float b); |
mirzamesic | 2:9014a27dde66 | 39 | float dividieren(float a, float b); |
mirzamesic | 2:9014a27dde66 | 40 | |
mirzamesic | 2:9014a27dde66 | 41 | |
mirzamesic | 2:9014a27dde66 | 42 | }; |
mirzamesic | 2:9014a27dde66 | 43 | |
mirzamesic | 2:9014a27dde66 | 44 | |
mirzamesic | 2:9014a27dde66 | 45 | |
mirzamesic | 2:9014a27dde66 | 46 | float Rechnen::addieren(float a, float b){ //hier haben wir vier verschiedene Memberfunktionen |
mirzamesic | 2:9014a27dde66 | 47 | |
mirzamesic | 2:9014a27dde66 | 48 | return(a+b); |
mirzamesic | 2:9014a27dde66 | 49 | } |
mirzamesic | 2:9014a27dde66 | 50 | |
mirzamesic | 2:9014a27dde66 | 51 | float Rechnen::subtrahieren(float a, float b){ |
mirzamesic | 2:9014a27dde66 | 52 | |
mirzamesic | 2:9014a27dde66 | 53 | return(a-b); |
mirzamesic | 2:9014a27dde66 | 54 | } |
mirzamesic | 2:9014a27dde66 | 55 | float Rechnen::multiplizieren(float a, float b){ |
mirzamesic | 2:9014a27dde66 | 56 | |
mirzamesic | 2:9014a27dde66 | 57 | return(a*b); |
mirzamesic | 2:9014a27dde66 | 58 | } |
mirzamesic | 2:9014a27dde66 | 59 | |
mirzamesic | 2:9014a27dde66 | 60 | float Rechnen::dividieren(float a, float b){ |
mirzamesic | 2:9014a27dde66 | 61 | |
mirzamesic | 2:9014a27dde66 | 62 | |
mirzamesic | 2:9014a27dde66 | 63 | int d=0; |
mirzamesic | 2:9014a27dde66 | 64 | if(b==0) //hier wird geprüft,ob die zweite nummer geprüft die "verbotene" Null ist. |
mirzamesic | 2:9014a27dde66 | 65 | { |
mirzamesic | 2:9014a27dde66 | 66 | return(d); //da kriegen wir zurück 0 als Ergebnis |
mirzamesic | 2:9014a27dde66 | 67 | } |
mirzamesic | 2:9014a27dde66 | 68 | else |
mirzamesic | 2:9014a27dde66 | 69 | |
mirzamesic | 2:9014a27dde66 | 70 | return(a/b); |
mirzamesic | 2:9014a27dde66 | 71 | } |
mirzamesic | 2:9014a27dde66 | 72 | |
mirzamesic | 2:9014a27dde66 | 73 | |
mirzamesic | 2:9014a27dde66 | 74 | |
mirzamesic | 2:9014a27dde66 | 75 | int main () |
mirzamesic | 2:9014a27dde66 | 76 | { |
mirzamesic | 2:9014a27dde66 | 77 | |
mirzamesic | 2:9014a27dde66 | 78 | |
mirzamesic | 2:9014a27dde66 | 79 | float a; |
mirzamesic | 2:9014a27dde66 | 80 | float b; |
mirzamesic | 2:9014a27dde66 | 81 | char c; |
mirzamesic | 2:9014a27dde66 | 82 | float ergebnis; |
mirzamesic | 2:9014a27dde66 | 83 | Rechnen meineBerechnung; |
mirzamesic | 2:9014a27dde66 | 84 | cout<<"Erste Zahl: "; |
mirzamesic | 2:9014a27dde66 | 85 | cin>>a; |
mirzamesic | 2:9014a27dde66 | 86 | |
mirzamesic | 2:9014a27dde66 | 87 | cout<<("Operator: "); |
mirzamesic | 2:9014a27dde66 | 88 | cin>>c; |
mirzamesic | 2:9014a27dde66 | 89 | |
mirzamesic | 2:9014a27dde66 | 90 | cout<<"Zweite Zahl: "; |
mirzamesic | 2:9014a27dde66 | 91 | cin>>b; |
mirzamesic | 2:9014a27dde66 | 92 | |
mirzamesic | 2:9014a27dde66 | 93 | if(c=='+') // hier wird Operator geprüft und richtige Methode aufgerufe |
mirzamesic | 2:9014a27dde66 | 94 | { |
mirzamesic | 2:9014a27dde66 | 95 | ergebnis=meineBerechnung.addieren(a,b); |
mirzamesic | 2:9014a27dde66 | 96 | cout<<ergebnis; |
mirzamesic | 2:9014a27dde66 | 97 | } |
mirzamesic | 2:9014a27dde66 | 98 | |
mirzamesic | 2:9014a27dde66 | 99 | else if(c=='-') |
mirzamesic | 2:9014a27dde66 | 100 | { |
mirzamesic | 2:9014a27dde66 | 101 | ergebnis=meineBerechnung.subtrahieren(a,b); |
mirzamesic | 2:9014a27dde66 | 102 | cout<<ergebnis; |
mirzamesic | 2:9014a27dde66 | 103 | } |
mirzamesic | 2:9014a27dde66 | 104 | else if(c=='*') |
mirzamesic | 2:9014a27dde66 | 105 | { |
mirzamesic | 2:9014a27dde66 | 106 | |
mirzamesic | 2:9014a27dde66 | 107 | ergebnis=meineBerechnung.multiplizieren(a,b); |
mirzamesic | 2:9014a27dde66 | 108 | cout<<ergebnis; |
mirzamesic | 2:9014a27dde66 | 109 | |
mirzamesic | 2:9014a27dde66 | 110 | } |
mirzamesic | 2:9014a27dde66 | 111 | else if(c=='/') |
mirzamesic | 2:9014a27dde66 | 112 | { |
mirzamesic | 2:9014a27dde66 | 113 | |
mirzamesic | 2:9014a27dde66 | 114 | ergebnis=meineBerechnung.dividieren(a,b); |
mirzamesic | 2:9014a27dde66 | 115 | |
mirzamesic | 2:9014a27dde66 | 116 | if(ergebnis==0){ |
mirzamesic | 2:9014a27dde66 | 117 | cout<<"Keine Division durch 0 moglich"; |
mirzamesic | 2:9014a27dde66 | 118 | } |
mirzamesic | 2:9014a27dde66 | 119 | else |
mirzamesic | 2:9014a27dde66 | 120 | { |
mirzamesic | 2:9014a27dde66 | 121 | cout<<ergebnis; |
mirzamesic | 2:9014a27dde66 | 122 | |
mirzamesic | 2:9014a27dde66 | 123 | } |
mirzamesic | 2:9014a27dde66 | 124 | |
mirzamesic | 2:9014a27dde66 | 125 | } |
mirzamesic | 2:9014a27dde66 | 126 | |
mirzamesic | 2:9014a27dde66 | 127 | |
mirzamesic | 2:9014a27dde66 | 128 | return 0; |
mirzamesic | 2:9014a27dde66 | 129 | } |
mirzamesic | 2:9014a27dde66 | 130 | |
mirzamesic | 2:9014a27dde66 | 131 | |
mirzamesic | 2:9014a27dde66 | 132 | |
mirzamesic | 2:9014a27dde66 | 133 |