tk01 Geschrieben 2. Mai 2009 Teilen Geschrieben 2. Mai 2009 Hallo, wie kann ich diese Schleife ausgeben? a. 1, -2, 3, -4, 5, -6,... -50 b. 1, 2, 4, 7, 11, 16,....bis Wert > 300 c. 1, 1.1, 1.2, 1.3, ... 3 d. 1,2,3,11,12,13,21,22,23,...,91,92,93 Ich grieg das nicht so hin, dass die Schleifen sich abwechseln. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Guybrush Threepwood Geschrieben 2. Mai 2009 Teilen Geschrieben 2. Mai 2009 Was meinst du mit abwechseln? Überleg dir einfach nach welchen mathematischen Regeln die Zahlenfolgen aufgebaut sind Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
tk01 Geschrieben 2. Mai 2009 Autor Teilen Geschrieben 2. Mai 2009 Was meinst du mit abwechseln? Überleg dir einfach nach welchen mathematischen Regeln die Zahlenfolgen aufgebaut sind ich brauche doch 2 for-schleifen um a) auszugeben. Habe einmal für x die positiven zahlen deklariert und für y die negativen. x ist eine for-schleife und y die zweite. Habe nur kein Plan, wie ich die 2 zusammenfürhren kann, weil meine console nur die x-schleife ausgibt. (1, 3, 5, 6,...49) Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Enno Geschrieben 2. Mai 2009 Teilen Geschrieben 2. Mai 2009 Du brauchst nur 1 for Schleife. evtl. musst du einfach in 1 Schleife 2 mathematische Operationen durchführen: a = 1 for { a (+1 *-1) a ist hier -2 a (*-1 +1) a ist hier 3 } Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
tk01 Geschrieben 2. Mai 2009 Autor Teilen Geschrieben 2. Mai 2009 Du brauchst nur 1 for Schleife. evtl. musst du einfach in 1 Schleife 2 mathematische Operationen durchführen: a = 1 for { a (+1 *-1) a ist hier -2 a (*-1 +1) a ist hier 3 } ok danke ich habe ja dann hier sowas stehen: for(x=1; x<=50; x....) bei dem x... was muss denn da dann rein?? da drunter kommt ja dann auch noch der printf befehl. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Enno Geschrieben 2. Mai 2009 Teilen Geschrieben 2. Mai 2009 for (x=1; x<=50;) {print x x = X+1 x = x * -1 print x x = x * -1 x = x + 1 } IMHO musst Du nicht zwingend die Schritte in der forschleife mitangeben. Du kannst wi ehier das X ja auch innerhalb der Schleife verändern. im Übrigen gibt es noch einiges mehr an Schleifen. Hier böte Sich z.B. auch eine do-while an. Tu solnage bis eine Bedingung erfüllt ist. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
tk01 Geschrieben 2. Mai 2009 Autor Teilen Geschrieben 2. Mai 2009 for (x=1; x<=50;) {print x x = X+1 x = x * -1 print x x = x * -1 x = x + 1 } IMHO musst Du nicht zwingend die Schritte in der forschleife mitangeben. Du kannst wi ehier das X ja auch innerhalb der Schleife verändern. im Übrigen gibt es noch einiges mehr an Schleifen. Hier böte Sich z.B. auch eine do-while an. Tu solnage bis eine Bedingung erfüllt ist. { int x; for (x=1; x<=50;) {printf("%x",x = x+1,x = x * -1); printf ("%x",x = x * -1,x = x + 1); } } So sieht zurzeit mein Kunstwerk aus, welches natürlich nicht klappt. Mit voller Fehler bestückt, aber ich denke als totaler Anfänger ist das keine schande. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Guybrush Threepwood Geschrieben 2. Mai 2009 Teilen Geschrieben 2. Mai 2009 for (int i=1; i<=50; ++i) { if (i%2) printf("%i,",i*-1); else printf ("%i,"i); }[/PHP] oder [PHP]for (int i=1; i<50; ++i) { printf("%i,%i,",i++, i*-1); } letzteres wäre dann in der Art wie du es anscheined vor hattest Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
flashpixx Geschrieben 2. Mai 2009 Teilen Geschrieben 2. Mai 2009 Wie wäre es denn mit (-1)^(i%2) * (i+1) für i=0 bis 50 Phil Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
tk01 Geschrieben 2. Mai 2009 Autor Teilen Geschrieben 2. Mai 2009 (bearbeitet) for (int i=1; i<=50; ++i) { if (i%2) printf("%i,",i*-1); else printf ("%i,"i); }[/PHP] oder [PHP]for (int i=1; i<50; ++i) { printf("%i,%i,",i++, i*-1); } letzteres wäre dann in der Art wie du es anscheined vor hattest danke das erste ist genau richtig!! das zweite funktioniert bei mir gar nicht. mal schaun ob ich die anderen hinbekomme.^^ Bearbeitet 2. Mai 2009 von tk01 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
tk01 Geschrieben 2. Mai 2009 Autor Teilen Geschrieben 2. Mai 2009 Wie wäre es denn mit (-1)^(i%2) * (i+1) für i=0 bis 50 Phil Du meinst mit dem printf? Was ist denn nochmal %2? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
flashpixx Geschrieben 2. Mai 2009 Teilen Geschrieben 2. Mai 2009 Du meinst mit dem printf? for(unsigned int i=0; i < 50; i++) sprintf("%i", pow(-1, i%2) * (i+1)); So sollte ca der Code aussehen Was ist denn nochmal %2? Modulo Operator (Restanteil der ganzzahlige Division) Außerdem ist Dein Problem kein programmatisches, sondern ein algorithmisches. Bitte schreibe Dir mal auf einem Blatt Papier auf, was der Ausdruck (-1)^modulo(i,2) * (i+1) bzw (-1)^(i%2) * (i+1) für die Zahlen 0 bis 49 liefert Phil Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
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.