Syntaxfehler?!?!? WARUM??



  • Hallo ich darf im Studium C++ lernen und wir haben folgende Aufgabe für daheim bekommen:
    http://www.wog-sen.de/c++.jpg

    ich habe folgendes bisher geschrieben und es muss irgendwo ein Fehler sein:

    #include <iostream>
    #include <cmath>
    using namespace std;
    void main (void)
    {
    	double x,  y, a, b, c ;
    	const double PI = 3.14159 ;
    	cout << " Bitte den Wert fuer x eingeben: " ;
    	cin >> x ;
    	cout << " Bitte den Wert fuer y eingeben: " ;
    	cin >> y ;
    	a = (pow(sin(x+PI) + .3 *pow(cos(x),2),2)/(sqrt(pow(x,2)+pow(y,2)+1)))+exp(-(x+1));
    	cout << " a= " << a << ;
    	b = (log (fabs(x-4+y))+sqrt(9+x))/(pow(y,2)*(x-2));
    	cout << " b= " << c <<;
    	c = (((2 + x*y)/3)+2/3-1)/(4*pow(x,2)*pow(y,2)+2) ;
    	cout << " c= " << c << endl ;
    }
    

    Bitte um Hilfe!! Ich bin echt total verzweifelt ich habe den Fehler schon mal bissl eingekreist. Er müsste in den Zeilen a = und b = liegen. Es kommt immer der Fehler:
    1>d:\dokumente und einstellungen\niklas\eigene dateien\visual studio 2005\projects\informatikpraktikum i\aufgabe_02\formel.cpp(20) : error C2059: Syntaxfehler: ';'
    1>d:\dokumente und einstellungen\niklas\eigene dateien\visual studio 2005\projects\informatikpraktikum i\aufgabe_02\formel.cpp(22) : error C2059: Syntaxfehler: ';'

    Danke im Voraus.

    lg
    wog



  • Hallo,

    du hast in Zeile 13 und 15 dem << (Leftshift) Operator keine Parameter übergeben, und ein Semikolon daneben gesetzt. Der Leftshift-Operator von std::cout jedoch erwartet mindestens einen Parameter. Wenn du jedoch keinen übergibst, und stattdessen nur <<; schreibst, ist da ein Semikolon und ein Leftshift Operator zu viel. Ich hab's dir mal korrigiert:

    #include <iostream>
    #include <cmath>
    using namespace std;
    int main ()
    {
        double x,  y, a, b, c ;
        const double PI = 3.14159 ;
        cout << " Bitte den Wert fuer x eingeben: " ;
        cin >> x ;
        cout << " Bitte den Wert fuer y eingeben: " ;
        cin >> y ;
        a = (pow(sin(x+PI) + .3 *pow(cos(x),2),2)/(sqrt(pow(x,2)+pow(y,2)+1)))+exp(-(x+1));
        cout << " a= " << a;
        b = (log (fabs(x-4+y))+sqrt(9+x))/(pow(y,2)*(x-2));
        cout << " b= " << c;
        c = (((2 + x*y)/3)+2/3-1)/(4*pow(x,2)*pow(y,2)+2) ;
        cout << " c= " << c << endl ;
    }
    


  • cout << " a= " << a << ;
    Nach dem Operator << muss noch irgendwas kommen, ist schließlich ein binärer Operator 😉

    edit: laaaaaaaaaaahm..



  • mach mal die letzten << weg



  • cool danke! Das ging ja sehr schnell. Jetzt muss ich wohl mir noch mal die Formeln angucken ist wohl noch bissl wo en Fehler drin aber ist ja nit schlimm da muss mehr jetzt nur mal richtig gucken

    Danke glaub ich werde öfters hier seien;)

    lg
    wog



  • Aber das nächste mal gib bitte an, welche die Zeile mit den Fehlern ist, Zeile 20 gibts in deinem Listing nicht 😉



  • Badestrand schrieb:

    Nach dem Operator << muss noch irgendwas kommen, ist schließlich ein binärer Operator

    Um dich zu korrigieren, in dem Fall ist es ein überladener Operator, dessen ursprüngliche Funktionsweise an Bedeutung verloren hat.



  • Schreib beim nächstenmal die richtige zeilen nummer hin (die die es hier ist), dann findet mans schneller.



  • mikey schrieb:

    Um dich zu korrigieren, in dem Fall ist es ein überladener Operator, dessen ursprüngliche Funktionsweise an Bedeutung verloren hat.

    Joar schon, trotzdem braucht er zwei Argumente :p



  • musst du immer schneller tippen 😞 🤡



  • Badestrand schrieb:

    Joar schon, trotzdem braucht er zwei Argumente

    Natürlich 😉 Ist ja schlimm, wenn so viele Leute im Forum unterwegs sind 😮



  • ds schrieb:

    musst du immer schneller tippen 😞 🤡

    Dafür ist mir ja eben mikey zuvorgekommen 😃 Hier gehts aber auch drunter und drüber 🤡



  • BOAH Leute, jetzt hört auf zu tippen, das hier ist ja schon ein Chat 😃


Anmelden zum Antworten