Problem kenn ich nich kann jmd Helfen?

ShadowV

Grünschnabel
Moin,
Ich bin neu hier und hab auch gleich ne Frage:

Also, In einer Woche muss ich Mathe Mündlich abgeben, soweit so gut.
Das Problem ist das ich ein Programm dafür schriebe.

Ich denke alles richtig geschrieben nur er zeigt mir immer einen Fehler an wenn ichs compiliren will.

Der Code:
Code:
#define pi 3.1415926535897932384626433832795
#define _USE_MATH_DEFINES
#include <cmath>
#include <cstdlib>
#include <iostream>
#include <string>

using namespace std;

int main()
{
    
    cout << "Wollen sie den Radius(1) oder das Volumen(2)?\n";
            "Geben sie die Zahl ein die Hinter ihrer Wahl steht: ";
    string y;
    cin >> y;
    if ( y >= "0" )
    {
    if ( y == "1" )
    {
    double Seite;
    double hoehe;
    double radius;
    cout << "Bitte seiten Laenge eingeben:";
    cin >> Seite;
    cout << "Geben Sie ihre Hoehe ein: ";
    cin >> hoehe;
    radius = Seite - hoehe;
    cout << "Der Radius Des Kegels beträgt " << radius << "cm\n";
    fflush(stdin);
    getchar();
}
if ( y == "2" )
{
    double radius;
    float hoehe;
    double Volumen;
    double standart = 0.3;
    double PI = M_PI;
    cout << "Geben sie den Radius an: ";
    cin >> radius;
    cout << "Geben sie die Hoehe des Kegels an: ";
    cin >> hoehe;  
    Volumen = standart * PI * ( radius * radius ) * hoehe;
    cout << "Volumen des Kegels: " << Volumen << "cm\n";
    fflush(stdin);
    getchar();
    system("PAUSE");
    return 0;
}
}

Die Fehler Meldung:
in function 'int main();
Zeile 51 expected '}' at the end of input
[Build Error] [main.o] Error 1




Danke schonmal in vorraus:D

PS: Programmiere erst seit 2 Tage wäre also nett wenn ne kleinung erklärung zu dem fehler kommt damit ich es versteh ;D Danke :D

Gruß Shadow
 
Hallo Shadow,

Wenn du deinen Code etwas besser einrückst siehst du den Fehler recht schnell:
C:
#define pi 3.1415926535897932384626433832795
#define _USE_MATH_DEFINES
#include <cmath>
#include <cstdlib>
#include <iostream>
#include <string>
 
using namespace std;
 
int main()
{
    cout << "Wollen sie den Radius(1) oder das Volumen(2)?\n";
            "Geben sie die Zahl ein die Hinter ihrer Wahl steht: ";
    string y;
    cin >> y;
    if ( y >= "0" )
    {
		if ( y == "1" )
		{
			double Seite;
			double hoehe;
			double radius;
			cout << "Bitte seiten Laenge eingeben:";
			cin >> Seite;
			cout << "Geben Sie ihre Hoehe ein: ";
			cin >> hoehe;
			radius = Seite - hoehe;
			cout << "Der Radius Des Kegels beträgt " << radius << "cm\n";
			fflush(stdin);
			getchar();
		}
		if ( y == "2" )
		{
			double radius;
			float hoehe;
			double Volumen;
			double standart = 0.3;
			double PI = M_PI;
			cout << "Geben sie den Radius an: ";
			cin >> radius;
			cout << "Geben sie die Hoehe des Kegels an: ";
			cin >> hoehe;  
			Volumen = standart * PI * ( radius * radius ) * hoehe;
			cout << "Volumen des Kegels: " << Volumen << "cm\n";
			fflush(stdin);
			getchar();
			system("PAUSE");
			return 0;
		}
	}
 
Auch wenn du erst seit zwei Tagen programmierst, ist die Fehlermeldung doch sehr eindeutig.
Da fehlt einfach ein "}" ganz am Ende.
 
Ja das hab ich auch schon geshen aber auch wenn ich da ein "}" reinsetze kommt die gleiche Fehlermeldung nochmal. :S

Edit: ok sry mussten 3 klammer sein xD Tut mir leid aber trotzdem Danke :D

Danke für die schnelle antwort:D
 
Am Rande sei noch erwähnt, dass folgender Teil nicht korrekt ist:
C:
            fflush(stdin);
            getchar();

Wenn du mit den C++-Eingabeströmen arbeitest verwendest du folgendes:
C++:
std::cin.sync();
std::cin.get();

fflush ist für Eingabeströme nicht definiert, siehe Referenz:
In some implementations this causes the input buffer to be cleared, but this is not standard behavior.
 
Zurück