LWeber89 Geschrieben 29. Januar 2009 Geschrieben 29. Januar 2009 Aufgabe: Bezinverbrauch pro 100 km Drehzahl in 1000 rpm Fuktion f(x)= 14/9x²-70/9x+128/9 Wertetabelle mit x werten zwischen 1-6 bei einer schrittweite von 0,5 a) Programm mit hilfe einer for schleife erstellen Programm mit hilfe einer do schleife erstellen a)#include <stdio.h> #include <conio.h> #include <iostream.h> void main(void) float x; for(x=1; x<=6; x=x+0.5) { printf ("%f\t",x*x*14/9-70/9*x+128/9); } #include <stdio.h> #include <conio.h> #include <iostream.h> int main(void) float x=1; do { printf("%\t", x*x*14/9-70/9*x+128/9) ; x=x+0.5; } --------------------------- Bekomme Fehlermeldungen wie: x ist bereits deklariert , Fehler in der deklarationssyntax Das hab ich bisjetzt, komm aber nicht weiter...:upps bin kein Entwickler aber schreibe bald eine Klausur in der Berufsschule danke im vorraus Zitieren
Klotzkopp Geschrieben 29. Januar 2009 Geschrieben 29. Januar 2009 Du musst den Inhalt deiner main-Funktion in geschweifte Klammern stecken. Aber mal ganz nebenbei, soll das C oder C++ sein? Von deinen Includes brauchst du eigentlich nur <stdio.h>, dann wäre das reines C, aber <iostream.h> legt nahe, dass das vielleicht doch C++ sein soll. Allerdings heißt das schon seit mehr als 10 Jahren <iostream>, ohne .h. Und in C++ würde man auch nicht printf benutzen, sondern cout. Zitieren
LWeber89 Geschrieben 29. Januar 2009 Autor Geschrieben 29. Januar 2009 (bearbeitet) #include <stdio.h> #include <conio.h> #include <iostream.h> --------------------------------------- Das mit dem .h hab ich von unsermen Lehrer so mitübernommen. C++ Bordland 5 int main(void) { float x=1; do { cout ("%\t", x*x*14/9-70/9*x+128/9) ; x=x+0.5; } while (x<=6) ;} bin knapp davor =) mal mit 2 variablen probieren Bearbeitet 29. Januar 2009 von LWeber89 Zitieren
Klotzkopp Geschrieben 29. Januar 2009 Geschrieben 29. Januar 2009 #include <stdio.h> #include <conio.h> #include <iostream.h> --------------------------------------- Das mit dem .h hab ich von unsermen Lehrer so mitübernommen.Dann solltest du deinem Lehrer (am besten durch die Blume) erklären, dass er einen Mischmasch aus C und veraltetem C++ lehrt. bin knapp davor =) Du kannst cout nicht wie printf benutzen. Mit cout würde das so aussehen: cout << x*x*14/9-70/9*x+128/9 << "\t"; Zitieren
LWeber89 Geschrieben 29. Januar 2009 Autor Geschrieben 29. Januar 2009 bin nun soweit gekommen mit cout hab ich es net so hinbekommen int main(void) { float x=1; float y ; do { x=x+0.5; y=x*x*14/9-70/9*x+128/9 ; printf ("x = %d\t", x) ; printf ("y = %d\n", y) ;4 ; } while (x<=6) ;} ------- Ist das soweit richtig? Einzigste meldung ist : Linker Fehler Unresolved exertnal _InitVCL refrenced from "Pfad" danke für deine hilfe Zitieren
Klotzkopp Geschrieben 29. Januar 2009 Geschrieben 29. Januar 2009 Ist das soweit richtig?In der zweiten printf-Zeile hängt noch so eine einsame 4 herum, die muss noch weg. Einzigste meldung ist : Linker Fehler Unresolved exertnal _InitVCL refrenced from "Pfad"Sieht aus, als hättest du den falschen Projekttyp gewählt. Du musst eine Konsolenapplikation erstellen, die VCL darfst du nicht benutzen. Zitieren
TDM Geschrieben 30. Januar 2009 Geschrieben 30. Januar 2009 int main braucht einen Rückgabewert (vorzugsweise 0). Zitieren
Klotzkopp Geschrieben 30. Januar 2009 Geschrieben 30. Januar 2009 int main braucht einen Rückgabewert (vorzugsweise 0).Man darf in C++ bei main (und nur dort) die Return-Anweisung weglassen, das ist gleichbedeutend mit return 0; Zitieren
TDM Geschrieben 30. Januar 2009 Geschrieben 30. Januar 2009 Man darf in C++ bei main (und nur dort) die Return-Anweisung weglassen, das ist gleichbedeutend mit return 0; Ja, du hast Recht, aber ich würde mir das nicht angewöhnen. :beagolisc Zitieren
posthorn Geschrieben 4. Februar 2009 Geschrieben 4. Februar 2009 bin nun soweit gekommen mit cout hab ich es net so hinbekommen hast du bei cout nur geschrieben "cout << variable <<endl;"?? falls ja setze nach dem include ein "using namespace std; " denn cout liegt in diesem namensbereich oder du schreibst immer:" std::cout << "text" << endl;" (endl bewirkt einen Zeilenumbruch) Zitieren
Micha82 Geschrieben 4. Februar 2009 Geschrieben 4. Februar 2009 #include <stdio.h> => reicht aus wenn du auf linux maschinen programmierst... void main() => geht nicht... main muss immer ein int zurück geben.. .also int main() und natürlich in { } und mit return 0; am ende... do() => bei der do schliefe braucht man auch nen abbruch... deswegen heißt die auch do()while()... insg: #include <stdio.h> int main() { printf("For-Schleife...\n"); float x1; for(x1=1.0; x1<=6.0; x1+=0.5) { printf ("%f\t\n",x1*x1*14/9-70/9*x1+128/9); } printf("Do-Schleife... \n"); float x2=1.0; do { printf("%f\t\n", x2*x2*14/9-70/9*x2+128/9); x2+=0.5; }while(x2<=6.0); return 0; } compilen g++ -o benzin benzin.cc ausführen ./benzin und bekommst ein ergebnis ps. wer rechtschreibfehler findet darf sie behalten Zitieren
TDM Geschrieben 5. Februar 2009 Geschrieben 5. Februar 2009 => reicht aus wenn du auf linux maschinen programmierst... Wenns C++, dann nicht. => geht nicht... main muss immer ein int zurück geben.. .also int main() und natürlich in { } und mit return 0; am ende... Normal gehören da noch die Argumente rein. Die Unsitte mit dem void main() stammt meines Wissens von Borland. :floet: ... und da er's nutzt - geht doch. => bei der do schliefe braucht man auch nen abbruch... deswegen heißt die auch do()while()... #include <stdio.h> #include <conio.h> #include <iostream.h> --------------------------------------- Das mit dem .h hab ich von unsermen Lehrer so mitübernommen. C++ Bordland 5 int main(void) { float x=1; do { cout ("%\t", x*x*14/9-70/9*x+128/9) ; x=x+0.5; } [COLOR="Red"][B]while (x<=6) ;[/B][/COLOR]} Zitieren
Micha82 Geschrieben 5. Februar 2009 Geschrieben 5. Februar 2009 ok beim zweiten post war while drinne hab nur aufn ersten geachtet :floet: 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.