Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » unterstützung beim lehrgang c++

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
20.08.2005, 18:18 Uhr
mr_avebe



hallo!
im juni 2005 habe ich einen lehrgang für c++ angefangen. da ich zeitlich eingegrenzt bin, bin ich auf schnelle hilfe angewiesen.
mir geht es nicht ums vorsagen oder abschreiben :-)
sondern um denkanstöße wenn es mal wieder klemmt.
ich bin auf diesem gebiet absoluter anfänger (und bitte um nachsicht :-)

im moment hänge ich beim programmieren eines taschenrechners (nur unter der dos-console)

die grundfunktion hab ich zum laufen, jetzt soll er erweitert werden. wer kann helfen?
über eine zusätzlich funktion sollen die anderen ergebnisse auch ausgegeben werden.

C++:
#include <iostream.h>

double zahl1;                                   //Variable
double zahl2;
char rechnen;

double summe(double x, double y){               //Addition
        return (x+y);
}

double differenz(double x, double y){          //Subtraktion
        return (x-y);
}

double produkt(double x, double y){            //Multiplikation
        return (x*y);
}

double divisor(double x, double y){            //Division
        return (x/y);
}


void main()  {

cout << "Geben Sie die erste Zahl ein: ";       //Einlesen
cin >> zahl1;

cout << "Geben Sie die zweite Zahl ein: ";
cin >> zahl2;

cout << "Geben Sie die Rechenoperation ein: (+ , - , * , /) ";
cin >> rechnen;


switch(rechnen){
        case '+':
        cout << "Das Ergebnis der Addition lautet: "<<summe(zahl1,zahl2)<<endl;
        break;

        case '-':
        cout << "Das Ergebnis der Subtraktion lautet: "<<differenz(zahl1,zahl2);
        break;

        case '*':
        cout << "Das Ergebnis der Multiplikation lautet: "<<produkt(zahl1,zahl2);
        break;

        case '/':
        if (zahl2==0){                                                           //Schutz gegen Division durch Null
                cout << "Sie haben eine Null eingegeben!"<<endl;
                cout << "Die Division durch Null ist nicht erlaubt!";
                break;
        }
        else{cout << "Das Ergebnis der Division lautet: "<<divisor(zahl1,zahl2);
        break;
        }

        default:                                                                 //Schutz gegen falsches Zeichen
        cout << "Sie haben keine Rechenfunktion gewaehlt !!!";
}
char p[50];
cin.getline (p,50);
cin.getline (p,50);
}



mod edit: benutze die CPP Tags selber!

Dieser Post wurde am 20.08.2005 um 20:46 Uhr von Pablo editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
20.08.2005, 18:35 Uhr
(un)wissender
Niveauwart


Wo liegt das Problem?


C++:
#include <iostream>

using namespace std;

double zahl1; //Variable
double zahl2;
char rechnen;

double summe(double x, double y){ //Addition
return (x+y);
}

double differenz(double x, double y){ //Subtraktion
return (x-y);
}

double produkt(double x, double y){ //Multiplikation
return (x*y);
}

double divisor(double x, double y){ //Division
return (x/y);
}

void doThemAll(double x, double y)
{
    cout << "Das Ergebnis der Addition lautet: "<<summe(x,y)<<'\n';
    cout << "Das Ergebnis der Subtraktion lautet: "<<differenz(x,y) << '\n';
    cout << "Das Ergebnis der Multiplikation lautet: "<<produkt(x,y) << '\n';
  
    if (y == 0.0 ) //Schutz gegen Division durch Null
    {
        cout << "Sie haben eine Null eingegeben!"<<endl;
        cout << "Die Division durch Null ist nicht erlaubt!";
    }
    else
    {
        cout << "Das Ergebnis der Division lautet: "<<divisor(x,y) << '\n';
    }  
      
      
}

int main() {

cout << "Geben Sie die erste Zahl ein: "; //Einlesen
cin >> zahl1;

cout << "Geben Sie die zweite Zahl ein: ";
cin >> zahl2;

doThemAll(zahl1, zahl2);

cout << "Geben Sie die Rechenoperation ein: (+ , - , * , /) ";
cin >> rechnen;


switch(rechnen){
case '+':
cout << "Das Ergebnis der Addition lautet: "<<summe(zahl1,zahl2)<<endl;
break;

case '-':
cout << "Das Ergebnis der Subtraktion lautet: "<<differenz(zahl1,zahl2);
break;

case '*':
cout << "Das Ergebnis der Multiplikation lautet: "<<produkt(zahl1,zahl2);
break;

case '/':
if (zahl2==0){ //Schutz gegen Division durch Null
cout << "Sie haben eine Null eingegeben!"<<endl;
cout << "Die Division durch Null ist nicht erlaubt!";
break;
}
else{cout << "Das Ergebnis der Division lautet: "<<divisor(zahl1,zahl2);
break;
}

default: //Schutz gegen falsches Zeichen
cout << "Sie haben keine Rechenfunktion gewaehlt !!!";
}
char p[50];
cin.getline (p,50);
cin.getline (p,50);
}


--
Wer früher stirbt ist länger tot.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
20.08.2005, 19:04 Uhr
mr_avebe



die erste ausgabe sieht so aus:

geben sie die erste zahl ein:12
geben sie die zweite zahl ein:25
geben sie die rechenoperation ein+,-,*,/)
das ergebnis der division lautet:0.48


nach der erweiterung soll folgendes ausgegeben werden!

geben sie die erste zahl ein:12
geben sie die zweite zahl ein:25
geben sie die rechenoperation ein+,-,*,/)
das ergebnis der division lautet:0.48
Alle berechnungen:
das ergebnis der addition lautet:37
das ergebnis der subtraktion lautet:-13
das ergebnis der multiplikation lautet:300
das ergebnis der division lautet:0.48

also im prinzip soll ich eine funktion schreiben, in der die funktionen der berechnungen enthalten ist, und alle berechnungen sollen erst nach der entsprechend gewählten berechnung ausgegeben werden (siehe beispiel).

ich habe probleme mit der syntax

p.s. wie schafft man es in der forum-antwort den quelltext so klein zu bekommen?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
20.08.2005, 22:49 Uhr
(un)wissender
Niveauwart


Ach komm, du hast alles was du brauchst. Eigentlich brauchst du doch nur eine Zeile ändern, nämlich den Aufrufen von doThemAll() weiter nach hinten zu schieben. Wenn das nicht geht, dann kann ich dir auch nicht helfen.
--
Wer früher stirbt ist länger tot.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
20.08.2005, 22:57 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


@(un)wissender
lol, Ich hatte die Frage gar nicht verstanden gehabt weil ja schon alles da stand....
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
21.08.2005, 10:34 Uhr
(un)wissender
Niveauwart


Habe mich auch schwer getan.
--
Wer früher stirbt ist länger tot.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: