hb1982 Geschrieben 20. Mai 2011 Geschrieben 20. Mai 2011 Hallo Leute, ich will mich erstmal kurz vorstellen: Ich bin student, belege im moment meinen EDV1 Kurs und da ich noch keinerlei erfahrung mit dem Programmieren habe fällt es mir sehr schwer. Beim googeln bin ich schon öfter auf dieses Forum gestoßen, jetzt bin ich aber an einem Punkt wo mir das recherchieren auch nicht weiter hilft. Deshalb gleich meine erste Frage. Die Aufgabe: aus einem Struktogramm das Programm schreiben, welches einfach nur die Fakultäten von 1 bis 10 ausgeben soll. Dazu sollen die felder 1 bis 3 (also index 0 bis 2) als erstes initialisiert werden und auf dieser grundlage die restlichen fakultäten berechnet werden (mit einer Zählschleife). Die Ausgabe soll dann mit einer Austrittsbedingung (do, printf(...) while(...)) erfolgen. Mein Problem müsste in der Berechnungsschleife liegen. Denn die Ausgabe sieht so aus: "Hallo! Dies sind die Fakultäten von 1 bis 10: 1 - 2 - 6 - 11087 - 4156214 - 0 - 0 - 0 - 8115058645 - 32767 - 0" Das ist wirrwarr:) Hier ist mein Programm, vielleicht erkennt man ja als erfahrener C-ler den Fehler auf anhieb. Ich bedanke mich schonmal recht herzlich für die Hilfe! #include <stdio.h> // Programm 3: Felder int main (void) { int feld[10], i; //Feldinitialisierung feld[0]=1; feld[1]=2; feld[2]=6; for(i==3; i==9; i++) //Berechnungsschleife { feld=feld[i-1]*i; } printf("Hallo! Dies sind die Fakultäten von 1 bis 10:\n"); i==0; do { if(i<9) { printf("%i - \n", feld); } else { printf("%i\n", feld); } i=i++; } while(i<11); return 0; Zitieren
Guybrush Threepwood Geschrieben 20. Mai 2011 Geschrieben 20. Mai 2011 for(i==3; i==9; i++) i==0; Die zwei Zeilen solltest du dir nochmal genau anschauen EDIT: Die auch: i=i++; Zitieren
hb1982 Geschrieben 20. Mai 2011 Autor Geschrieben 20. Mai 2011 (bearbeitet) Danke für die schnelle Antwort! muss ich für die oberen beider zeilen anstatt == nur ein = schreiben? weil es eine zuweisung sein muss? und genau das selbe unten, nur andersrum? also wenn ich das änder, zeigt mir das Programm garnichts mehr an. Also ich wüsste nicht was da sonst falsch sein könnte:s Bearbeitet 20. Mai 2011 von hb1982 Zitieren
Guybrush Threepwood Geschrieben 20. Mai 2011 Geschrieben 20. Mai 2011 muss ich für die oberen beider zeilen anstatt == nur ein = schreiben? weil es eine zuweisung sein muss? und genau das selbe unten, nur andersrum? also wenn ich das änder, zeigt mir das Programm garnichts mehr an. Du sollst auch nicht durch ausprobieren und zufall da irgendwelche Zeichen hinmachen sondern dir überlegen wo du etwas zuweisen und wo du etwas vergleichen willst, und bei letzterem wie der Vergleich genau aussehen soll. Am Besten schaust du nochmal über den Link von Hexagon wie genau die Abbruchsbedingung der for schleife funktioniert. 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.