Ich bin blutige Anfängerin was das Programmieren angeht und bräuchte mal eure Hilfe.
Ich gebe ein Feld ein, nennen wir es F1 (ende mit 0). Danach gebe ich einen Wert ein, sagen wir der heisst y. Jetzt sollen alle Zahlen die größer als y sind in F2 gespeichert werden und die anderen in F3. Danach sollen die Zahlen abwechselnd ausgegben werden...
Z.B: eingabe: 25 10 2 3 87 5 y= 4 dann soll es so ausgegeben werden: 25 2 10 3 87 5
Wie kann ich aber die beiden Felder abwechselnd ausgeben? Kann mir da jemand helfen?
hallo... ich konnte mit deinem programm nicht wirklich viel anfangen...
ich hab ne andere art zu programmieren gelernt bzw lerne gerade...
es wär echt super wenn du dir mal meinen source code anschauen könntest und mir sagst was bei mir falsch läuft bzw wie ich die ausgabe machen kann.. danke schon mal jetzt:
C++:
#include<iostream.h> int main (){ int F[50]; int Fg[50], Fk[50]; int x; int j = 0; int k = 0;
cout << "\n Bitte geben Sie max. 50 Zahlen ein und beenden Sie Ihre Eingabe mit 0! \n";
while (F != 0){ cin >> F; if (F == 0){ cout << "\n Bitte geben Sie eine Zahl ein! \n"; cin >> x;
}
}
for (int ii = 0; F[ii] != 0; ii++){ if (F[ii] > x){ Fg[j] = F[ii]; j++; } else { Fk[k] = F[ii]; k++; } }
cout << //wie mach ich die ausgabe?//
} else
cout << "\n Sie haben mehr als 50 Zahlen eingegeben! \n";
}
ich hoffe du kannst mir helfen... danke schon mal jetzt.
int main () { int F[50]; int Fg[50], Fk[50]; int x; int j = 0; int k = 0;
cout << "\n Bitte geben Sie max. 50 Zahlen ein und beenden Sie Ihre Eingabe mit 0! \n";
int l=0; do { if(l<50) { cout << "\n Bitte geben Sie eine Zahl ein! \n"; cin >> F[l++]; } else { cout << "\n Sie haben mehr als 50 Zahlen eingegeben! \n"; return(1); } } while (F[l-1]);
cout <<" Mit welcher Zahl vergleichen?\n"; cin >> x;
for (int ii = 0; F[ii] != 0; ii++) { if (F[ii] > x) { Fg[j] = F[ii]; j++; } else { Fk[k] = F[ii]; k++; } }
1. Die Verwendung von iostream.h (von allen Standard-Headern mit .h) ist veraltet. Dem aktuellen Standard entsprechend sind die ohne .h zu verwenden. Dann ist auch alles im namespace std gekapselt.
2. Wenn Du was noch nicht verstehst nachfragen (konkret, bitte): -- Gruß void*
ich kenn mich hier überhaupt nicht aus. ich habe noch nie mit output gearbeitet und was flush heisst weiss ich auch nicht. *fgp=Fg: ist das ein Zeiger? die kann ich auch noch nicht.
gibt es da vielleicht noch andere lösungsvorschläge?
1. Ja, fgp und fkp sind Zeiger! 2. output ist nur eine Variable um zu prüfen, ob wenigstens aus einem Feld gelesen wurde. Sonst wird die Ausgabe beendet. -- Gruß void*
Wegen der Abbruch bedingung: Die Schleife wird nur ein 2. mal durchlaufen, wenn Fg[ii] == 0 und Fk[ii] == 0. D.h. praktisch nier (nur wenn man sofort 0 eingibt). -- Gruß void*