Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (WinAPI, Konsole) » goto ohne schleife?

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 < [ 2 ]
000
27.11.2006, 17:17 Uhr
Compiler



Hi Leute,
Ich willte ein Programm herstellen, das merere Rechner und so enthält, Nur solte das nachdem eine sache fertig ist beenden und nicht das ganze weiterfahren kann mir mal jemand helfen? P.S. goto bringt nix!



C++:
#include <iostream>
#include <conio.h>

using namespace std;

main()
{
     float nr;
    
     cout<<"Hallo, wäaele eine Funktion von mir aus!"<<endl;
     cout<<"Fuer den Rechner geben sie bitte eine 1 ein"<<endl;
     cout<<"Fuer den Rechteck berechner geben sie bitte eine 2 ein"<<endl;
     cout<<"Fuer den Dreieck berechner geben sie bitte eine 3 ein"<<endl;  
     cin>>nr;
     cout<<" "<<endl;
     cout<<" "<<endl;
    
    
    
     if (nr=1)
    {
    char cOperator;
    float zahl1;
    float zahl2;
    float resultat;

    cout<<"Gib die erste Zahl ein!"<<endl;
    cin>>zahl1;
    cout<<"Gib die zweite Zahl ein!"<<endl;
    cin>>zahl2;
    cout<<"Gib den Operator in! Plus= +, Minus= -,Multiplikation= *, Divisoin= / "<<endl;
    cin>>cOperator;
    
    switch (cOperator)
    {
           case'+':
           {
              resultat = zahl1 - zahl2;
           } break;
           case'-':
           {
              resultat = zahl1 - zahl2;
           } break;
           case'*':
           {
              resultat = zahl1 * zahl2;
           }
           case '/':
           {
              resultat = zahl1 / zahl2;
           } break;
        cout<<resultat<<endl;
     goto AUSGANG;
    }  
                                                        
  
  
    if(nr=2)
    {

         float Breite, Hoehe, Flaeche, Umfang;
         cout << "Wie breit ist das Rechteck? : ";
         cin  >> Breite;
         cout << "Wie hoch ist das Rechteck?  : ";
         cin  >> Hoehe;
         Flaeche = Breite * Hoehe;
         Umfang  = 2 * (Breite + Hoehe);
         cout << "Flaeche: " << Flaeche << endl;
         cout << "Umfang : " << Umfang  << endl;
    }
  }    
  
   AUSGANG:;
   getch();
}    
}




Bearbeitung:

Bitte codetags verwenden...


Dieser Post wurde am 27.11.2006 um 17:35 Uhr von Windalf editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
27.11.2006, 17:32 Uhr
Guybrush Threepwood
Gefürchteter Pirat
(Operator)



Zitat von Compiler:
P.S. goto bringt nix!

na mit der Erkenntnis ist doch schonmal viel gewonnen

Wenn du jetzt noch genau erklärst womit du probleme hast dann kann man dir bestimmt auch weiterhelfen. Ansonsten lege ich dir mal ein C Buch ans Herz...
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
27.11.2006, 17:50 Uhr
Compiler



naja, ich möchte, das wenn man z.B. die 1 für den Rechner eingibt, das wenn der rechner rechenforgang beendet ist, das Progrramm beendet wird, es geht sinst immer weiter zum Rechteckberechner!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
27.11.2006, 19:16 Uhr
BoBtheREapER
kein job für nen BoB


anstatt
goto AUSGANG
return 0
--
"Zwei Dinge sind unendlich: Das Universum und die menschliche Dummheit. Aber beim Universum bin ich mir nicht ganz sicher." - Albert Einstein
www.blue-xenon.de.vu

Dieser Post wurde am 27.11.2006 um 19:17 Uhr von BoBtheREapER editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
27.11.2006, 20:11 Uhr
Compiler



wie etzt so?


{

block
}

goto ausgang;



{

block
}

ausgang return0;?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
27.11.2006, 20:37 Uhr
BoBtheREapER
kein job für nen BoB



C++:
switch (cOperator)
    {
           case'+':
           {
              resultat = zahl1 - zahl2;
           } break;
           case'-':
           {
              resultat = zahl1 - zahl2;
           } break;
           case'*':
           {
              resultat = zahl1 * zahl2;
           }
           case '/':
           {
              resultat = zahl1 / zahl2;
           } break;
        cout<<resultat<<endl;
     return 0; //goto AUSGANG;
    }


EDIT: man so schwer kann das worst return doch nicht zu schreiben sein.
--
"Zwei Dinge sind unendlich: Das Universum und die menschliche Dummheit. Aber beim Universum bin ich mir nicht ganz sicher." - Albert Einstein
www.blue-xenon.de.vu

Dieser Post wurde am 27.11.2006 um 20:37 Uhr von BoBtheREapER editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
27.11.2006, 20:46 Uhr
Compiler



Klar nicht, aber anstaht goto wird return0; gesetzt oder?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
28.11.2006, 05:38 Uhr
Spacelord
Hoffnungsloser Fall



C++:
if (nr==1)

und nicht

C++:
if(nr=1)

sollte dich weiterbringen.

Gruß Spacelord
--
.....Ich mach jetzt nämlich mein Jodeldiplom.Dann hab ich endlich was Eigenes.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
28.11.2006, 14:27 Uhr
Multi



goto sind eigentlich spaghetticode
(das goto im beispiel ob bingt nichts

Zitat:

EDIT: man so schwer kann das worst return doch nicht zu schreiben sein.

kapselungen sind besser



C++:
#include <iostream>
#include <conio.h>

using namespace std;

float nr;


BedinugsAnweisung()
{
cout<<"Hallo, waehle eine Funktion von mir aus!"<<endl;
     cout<<"Fuer den Rechner geben sie bitte eine 1 ein"<<endl;
     cout<<"Fuer den Rechteck berechner geben sie bitte eine 2 ein"<<endl;
     cin>>nr;
     cout<<endl;
     cout<<endl;
}


Auswertung()
{

try(nr)
{

catch 1:
     char cOperator;
    float zahl1;
    float zahl2;
    float resultat;

    cout<<"Gib die erste Zahl ein!"<<endl;
    cin>>zahl1;
    cout<<"Gib die zweite Zahl ein!"<<endl;
    cin>>zahl2;
    cout<<"Gib den Operator ein! Plus = +, Minus = -,Multiplikation = *, Divisoin = / "<<endl;
    cin>>cOperator;
    
    switch (cOperator)
    {
           case'+':
           {
              resultat = zahl1 + zahl2;
           } break;
           case'-':
           {
              resultat = zahl1 - zahl2;
           } break;
           case'*':
           {
              resultat = zahl1 * zahl2;
           }
           case '/':
           {
              resultat = zahl1 / zahl2;
           } break;
        cout<<resultat<<endl;
    return 0;
     }


catch 2:
           float Breite, Hoehe, Flaeche, Umfang;
         cout << "Wie breit ist das Rechteck? : ";
         cin  >> Breite;
         cout << "Wie hoch ist das Rechteck?  : ";
         cin  >> Hoehe;
         Flaeche = Breite * Hoehe;
         Umfang  = 2 * (Breite + Hoehe);
         cout << "Flaeche: " << Flaeche << endl;
         cout << "Umfang : " << Umfang  << endl;
      return0;

default BedinungsAnweisung();
}
}


main()
{
     BedinungsAnweisung();
     Auswertung();  

cin.get();
    
}


EDIT: Macht 2.50
--
Microschrott präsentiert
Windoof SE Natiol
jetzt sofort den Mega-Bundle bestellen
mit der stylischen 3Tasten Tastartur
(Strg, Alt, Entf)

Dieser Post wurde am 28.11.2006 um 14:34 Uhr von J-jayz-Z editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
28.11.2006, 14:31 Uhr
Multi



nein!

das sollte eigentlich
mit zitat und c++ fenster sein(vergesen)
--
Microschrott präsentiert
Windoof SE Natiol
jetzt sofort den Mega-Bundle bestellen
mit der stylischen 3Tasten Tastartur
(Strg, Alt, Entf)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ]     [ C / C++ (WinAPI, Konsole) ]  


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: