Schleifenproblem
-
Hey, kann mir jemand sagen wie ich diese Schleife umsetze, bzw um was es sich hierbei für eine Schleife handelt?
http://i10.photobucket.com/albums/a110/Eisi_86/Unbenannt.jpg
Hab üer google nicht wirklich was gefunden und in meinen Unterlagen auch nix, hoffe mir kann jemand weiterhelfen

MFG
-
SuperTalent schrieb:
Hey, kann mir jemand sagen wie ich diese Schleife umsetze, bzw um was es sich hierbei für eine Schleife handelt?
Es gibt keine Schleife hierfür, daher: So garnicht (zumindestens nicht sinnvoll).
Edit: Nachbauen mit etwas Aufwand, einigen if-Blöcken, oder Untergliederung in Unterfunktionen, ist natürlich dennoch möglich. Nur ein Sprung wie in deinen Diagramm aus einer Schleife in eine andere, ist nicht möglich (goto gehört zum sehr schlechten Programmstil).
-
ohjee das wird was

also mehr mit if, if else und for arbeiten
-
SuperTalent schrieb:
ohjee das wird was

also mehr mit if, if else und for arbeiten
Es hat schon seine Gründe warum diese Diagrammart in der Programmierung eher nur bedingt geeignet ist.
-
jetzt weiß ich auch wieso das die letzte Aufgabe ist

-
Ich hab gehört lesen hilft.
http://tutorial.schornboeck.net/inhalt.htm
-
überleg dir lieber was das machen soll und wie man sowas schön macht, als das chaos direkt in code umzusetzen.
-
Das ist schwierig,
ich muss ja ne Bedingung schreiben, und wenn die zutrifft -> ausführen, ansonsten wieder hoch gehen mit ensprechenden veränderungen zB zähler +1 oder so ...
nach was sollt ich in dem Tut genau gucken?
-
Vielleicht wären
breakundcontinueetwas, damit kann man den Programmfluss innerhalb einer Schleife manipulieren.Bis jetzt war ich eigentlich noch nie so tief gesunken, dass ich auf
gotozurückgreifen musste.
-
was ist an goto so schrecklich??
-
-
kann sich das mal einer angucken, da sind am Ende zahlen die da nicht hingehören, bin schon am verzwefeln, find kein Fehler, krieg auch keine Meldung ...
#include <iostream> using namespace std; int main(void) { const int zeilenzahl=4, spaltenzahl_A=4, spaltenzahl=5; int matrix_A[zeilenzahl][spaltenzahl_A]={{2,1,0,3}, {0,2,6,1}, {3,4,0,1}, {4,1,2,0}}; int matrix_B[zeilenzahl][spaltenzahl], matrix_C [zeilenzahl][spaltenzahl]; int zeile=0, spalte=0, summe=0, zaehler=0; cout << "\nGeben Sie bitte zeilenweise die Elemente der Matrix ein!\n\n"; for(zeile=0; zeile<=zeilenzahl-1;zeile++) { cout << "\nElement der "<<zeile+1<<"ten Zeile von B!\n\n"; spalte=0; for(spalte=0;spalte<=spaltenzahl-1;spalte++) { cin >> matrix_B [zeile][spalte]; } } cout << "\nDies ist die Matrix A:\n\n"; zeile=0; for (zeile=0;zeile<=zeilenzahl;zeile++) { for (spalte=0;spalte<=spaltenzahl_A-1;spalte++) cout << matrix_A[zeile][spalte]; cout <<endl; } return 0; }
-
SuperTalent schrieb:
/* ... */ for (zeile=0;zeile<=zeilenzahl;zeile++) { for (spalte=0;spalte<=spaltenzahl_A-1;spalte++) cout << matrix_A[zeile][spalte]; cout <<endl; } return 0; }Das Problem ist die Bedingung der äußeren
for-Schleife:for (zeile=0;zeile<=zeilenzahl;zeile++)Hier zählst du die Variable
zeilevon 0 beginnend hoch, bis sie nicht mehr kleiner gleich der Konstantenzeilenzahlist. Also wirdzeilevon 0 bis einschließlich 4 hochgezählt. Das sind 5 Zahlen dein 2-Dimensionales Arraymatrix_Ahat aber nur 4 Elemente in der 1. Dimension. Die Bedingung deiner äußerenfor-Schleife müsste also so lauten:for (zeile=0;zeile<=zeilenzahl-1;zeile++)Dann sollte es funktionieren :).
Übrigens könntest du die Bedingungen deinerfor-Schleifen auch so schreiben:for (zeile = 0; zeile < zeilenzahl; zeile++) // nur 'kleiner als' anstatt 'kleiner gleich'oder so
for (zeile = 0; zeile != zeilenzahl; zeile++)// 'nicht gleich'Dann bräuchtest du nicht immer die
-1mit hinschreiben :).
-
ok danke, wär ich nie drauf gekommen ^^
-
Ich hab ja schon viel geschafft vom Pgrogramm..

mir fehlt nur der Teil, ich weiß einfach nicht wie man das am besten umsetzen sollte... ich brauch irgendnen denkanstoß´..