SchuPo Geschrieben 25. August 2010 Geschrieben 25. August 2010 Hi loids, bin neu in der Programmierer branche und versuche mir gerade C++ ein wenig selber bei zu bringen. Bin zwar FI-SI aber programmiersprachen now-how kann man ja immer im leben gebrauchen. Ich hab also im C++ Builder ein einfaches Taschenrechner Programmchen geschrieben (abgeschrieben)*lol* aber beim ausführen zeigt es mir fehler an. Könnt ihr euch des mal bitte anschaun und mir vll. weiter helfen? Mit freundlichen grüßen Benny Quelltext: //---------Funktions-Bibliotheken-------------------------------------------------------- #include <iostream> //---------Funktionsdeklarationen----Funktionsprototypen----------------------------- void berechnung_mit_ausgabe(char op,float z1,float z2); float zahl_einlesen(char zahl_nummer); char operator_einlesen(); char aktion_einlesen(); float add(float z1, float z2); float sub(float z1, float z2); float div((float z1, float z2); float mul((float z1, float z2); float hoch2(float z1); float hoch4(float z1); float hoch8(float z1); //-----------Hauptprogramm--------------------------------------------------------- #pragma argsused int main(int argc, char* argv[]) { char aktion = 'n'; char operatioon = 'n'; float z1 = 0; float z2 = 0; do { cout << "\n Taschenrechner\n"; z1 = zahl_einlesen('1'); operation = operator_einlesen(); if (((operation !='2')&&(operation !='4')&&operation !='8')) { z2 = zahl_einlesen('2'); } berechnung_mit_ausgabe(operation,z1,z2); aktion = aktion_einlesen(); } while (1)((aktion == 'j')||(aktion == 'J')); return0; } //------------Funktionsdefinitionen----------------------------------------------------------- void berechnung_mit_ausgabe/char op,float z1,float z2) { cout << "\nDas Ergebnis lautet: "; switch (op) { case '+': cout << add(z1,z2); break; case '-': cout << sub(z1,z2); break; case ':#: case '/': cout << div(z1,z2); break; case '*': cout << mul(z1,z2); break; case '2'; cout << hoch2(z1); break; case '4': cout << hoch4(z1); break; case '8': cout << hoch8(z1); break; default : cout << "\nUnbekannter Operator!\n"; } } float zahl einlesen(char zahl_nummer) { float zahl=0; cout << "\nBitte die " <<zahl_nummer <<". Zahl eingeben:"; cin >> zahl; return zahl; } char operator_einlesen() { char operation = 'n'; cout << "\nWaehlen Sie eine Operation:"; cout << "\n+,-,*,/,hoch(2), hoch(4), hoch(8):"; cin >> operation; return operation; } char aktion_einlesen() { char aktion = 'n'; cout<< "\nWollen Sie eine neue berechnung durchfuehren (j/n)? "; cin>> aktion return aktion; } float add(float zahl1, float zahl2) { return zahl1 + zahl2; } float sub(float zahl1, float zahl2) { return zahl1 - zahl2; } float mul(float zahl1, float zahl2) { return zahl1 * zahl2; } float div (float zahl1, float zahl2) { return zahl1 / zahl2; } float hoch2(float zahl) { return mul(zahl, zahl); } float hoch4(float zahl) { return hoch2((hoch2(zahl)); } float hoch8(float zahl) { return hoch2(hoch4(zahl)); } Fehlermeldungen: Abhängigkeiten des Projekts werden überprüft... Compilieren von Taschenrechner.cbproj (Debug-Konfiguration) [bCC32 Fehler] Taschenrechner.cpp(11): E2188 Ausdruckssyntax [bCC32 Fehler] Taschenrechner.cpp(11): E2293 ) erwartet [bCC32 Fehler] Taschenrechner.cpp(12): E2188 Ausdruckssyntax [bCC32 Fehler] Taschenrechner.cpp(12): E2293 ) erwartet [bCC32 Fehler] Taschenrechner.cpp(28): E2451 Undefiniertes Symbol 'cout' Vollständiger Parser-Kontext Taschenrechner.cpp(20): Analyse: int main(int,char * *) [bCC32 Fehler] Taschenrechner.cpp(30): E2451 Undefiniertes Symbol 'operation' Vollständiger Parser-Kontext Taschenrechner.cpp(20): Analyse: int main(int,char * *) [bCC32 Fehler] Taschenrechner.cpp(38): E2378 In Do-while-Anweisung fehlt ; Vollständiger Parser-Kontext Taschenrechner.cpp(20): Analyse: int main(int,char * *) [bCC32 Fehler] Taschenrechner.cpp(39): E2451 Undefiniertes Symbol 'return0' Vollständiger Parser-Kontext Taschenrechner.cpp(20): Analyse: int main(int,char * *) [bCC32 Fehler] Taschenrechner.cpp(43): E2449 Größe von 'berechnung_mit_ausgabe' unbekannt oder Null [bCC32 Fehler] Taschenrechner.cpp(43): E2356 Redeklaration von 'berechnung_mit_ausgabe(char,float,float)' mit anderem Typ [bCC32 Fehler] Taschenrechner.cpp(5): E2344 'berechnung_mit_ausgabe(char,float,float)' bereits deklariert [bCC32 Fehler] Taschenrechner.cpp(43): E2449 Größe von 'berechnung_mit_ausgabe(char,float,float)' unbekannt oder Null [bCC32 Fehler] Taschenrechner.cpp(43): E2141 Fehler in der Deklarationssyntax [bCC32 Fehler] Taschenrechner.cpp(52): E2380 Nicht abgeschlossene String- oder Zeichen-Konstante [bCC32 Warnung] Taschenrechner.cpp(52): W8098 Ungültige mehrstellige Zeichenkonstante Misslungen Verstrichene Zeit: 00:00:01.3 :confused: Zitieren
Klotzkopp Geschrieben 25. August 2010 Geschrieben 25. August 2010 Der Builder zeigt die Fehler nicht beim Ausführen deines Programms an, weil es gar nicht dazu kommt. Die Fehler treten beim Übersetzen auf. Es ist übrigens auch Anfängern nicht verboten, sich die Fehlermeldungen mal genau durchzulesen und zu versuchen, sie zu verstehen [bCC32 Fehler] Taschenrechner.cpp(11): E2188 Ausdruckssyntax [bCC32 Fehler] Taschenrechner.cpp(11): E2293 ) erwartet Der Compiler erwartet in Zeile 11 eine schließende runde Klammer. Das könnte daran liegen, dass du zwei Klammern öffnest, aber nur eine wieder schließt. Die meisten übrigen Fehler rühren anscheinend auch daher, dass du beim Abschreiben nicht besonders sorgfältig warst. Zitieren
SchuPo Geschrieben 25. August 2010 Autor Geschrieben 25. August 2010 Hallo Klotzkopp, danke für deine rasche Antwort, geb dir da 100% recht was du sagst, aber ich hab des ganze echt so abgeschrieben, wie wirs auch von unserem KL in der BS bekommen haben. Konnte schon dank deiner hilfe einige fehler ausbessern, gibt aber immer noch fehler die ich nicht verstehe und finde. Ich hoff du kannst mir noch ein weiteres mal aushelfen. mfg Benny Fehlermeldungen: Abhängigkeiten des Projekts werden überprüft... Compilieren von Taschenrechner.cbproj (Debug-Konfiguration) [bCC32 Fehler] Taschenrechner.cpp(28): E2451 Undefiniertes Symbol 'cout' Vollständiger Parser-Kontext Taschenrechner.cpp(20): Analyse: int main(int,char * *) [bCC32 Fehler] Taschenrechner.cpp(30): E2451 Undefiniertes Symbol 'operation' Vollständiger Parser-Kontext Taschenrechner.cpp(20): Analyse: int main(int,char * *) [bCC32 Fehler] Taschenrechner.cpp(38): E2378 In Do-while-Anweisung fehlt ; Vollständiger Parser-Kontext Taschenrechner.cpp(20): Analyse: int main(int,char * *) [bCC32 Fehler] Taschenrechner.cpp(43): E2449 Größe von 'berechnung_mit_ausgabe' unbekannt oder Null [bCC32 Fehler] Taschenrechner.cpp(43): E2356 Redeklaration von 'berechnung_mit_ausgabe(char,float,float)' mit anderem Typ [bCC32 Fehler] Taschenrechner.cpp(5): E2344 'berechnung_mit_ausgabe(char,float,float)' bereits deklariert [bCC32 Fehler] Taschenrechner.cpp(43): E2449 Größe von 'berechnung_mit_ausgabe(char,float,float)' unbekannt oder Null [bCC32 Fehler] Taschenrechner.cpp(43): E2141 Fehler in der Deklarationssyntax [bCC32 Fehler] Taschenrechner.cpp(52): E2380 Nicht abgeschlossene String- oder Zeichen-Konstante [bCC32 Warnung] Taschenrechner.cpp(52): W8098 Ungültige mehrstellige Zeichenkonstante Misslungen Verstrichene Zeit: 00:00:00.3 :confused: Zitieren
Klotzkopp Geschrieben 25. August 2010 Geschrieben 25. August 2010 [bCC32 Fehler] Taschenrechner.cpp(28): E2451 Undefiniertes Symbol 'cout'cout liegt (wie alle Klassen, Objekte und Funktionen der Standardbibliothek) im Namespace std. Du musst also entweder std::cout schreiben oder eine using-Direktive benutzen. [bCC32 Fehler] Taschenrechner.cpp(30): E2451 Undefiniertes Symbol 'operation'Der Fehler ist nicht an dieser Stelle, sondern etwas darüber. Schau dir mal genau an, welchen Namen du der Variablen wirklich gegeben hast. Für den Rest zeig bitte den aktuellen Code. Zitieren
TDM Geschrieben 25. August 2010 Geschrieben 25. August 2010 Ist das hier im Forum 1:1 der Quellcode des Programms? Irgendwie sind mir das zu viele (offensichtliche) Tippfehler. Zitieren
SchuPo Geschrieben 25. August 2010 Autor Geschrieben 25. August 2010 Also nochmals vielen Dank, hab jetzt fast alle fehler gefunden bis auf meinen letzten. Quelltext: char aktion_einlesen() { char aktion = 'n'; cout<< "\nWollen Sie eine neue berechnung durchfuehren (j/n)? "; cin>> aktion return aktion; } Fehlermeldung: Abhängigkeiten des Projekts werden überprüft... Compilieren von Taschenrechner.cbproj (Debug-Konfiguration) [bCC32 Fehler] Taschenrechner.cpp(92): E2379 In Anweisung fehlt ; Vollständiger Parser-Kontext Taschenrechner.cpp(88): Analyse: char aktion_einlesen() [bCC32 Warnung] Taschenrechner.cpp(93): W8070 Funktion sollte einen Wert zurückgeben Vollständiger Parser-Kontext Taschenrechner.cpp(88): Analyse: char aktion_einlesen() Misslungen Verstrichene Zeit: 00:00:00.5 Danke und dickes Lob an die freundlichkeit und hilfsbereitschaft. grüße benny:uli Zitieren
Klotzkopp Geschrieben 25. August 2010 Geschrieben 25. August 2010 cin>> aktion E2379 In Anweisung fehlt ; ..... Zitieren
SchuPo Geschrieben 26. August 2010 Autor Geschrieben 26. August 2010 Also an dieser Stelle ein ganz dickes lob an Dich Klotzkopp und all denen die mir bis jetzt weitergeholfen haben. Progi funkt und beim nächsten mal weiß ich das ich etwas besser auf mein abschreiben achte und wenn ich fehler habe Sie mir selbst zu suchen. Aber fürs erste Dankeschön. grüße aus dem Nürnberger Land Benny;) Zitieren
Werwofl Geschrieben 26. August 2010 Geschrieben 26. August 2010 Also an dieser Stelle ein ganz dickes lob an Dich Klotzkopp und all denen die mir bis jetzt weitergeholfen haben. Progi funkt und beim nächsten mal weiß ich das ich etwas besser auf mein abschreiben achte und wenn ich fehler habe Sie mir selbst zu suchen. Aber fürs erste Dankeschön. grüße aus dem Nürnberger Land Benny;) Grundsätzlich Fehler ! = abschreiben. Versuch zu verstehen was falsch läuft sonst wirst du nie Programmierung verstehen. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.