Arrays

BLUEblue

Grünschnabel
Hallo, ich habe ein Problem bei dem Zusammenführen von Arrays. Die Ausgabe soll so erfolgen, dass zuerst die ungeraden und dann die geraden Zahlen ausgegeben werden.
Ich kann entweder nur die ungeraden oder die geraden ausgeben, aber nicht beide zusammen. Was mach ich da falsch?

Ich denke der Fehler ist in diesem Teil:

Code:
		IO.write("Merged array (odd/even sorted):");

		
		for (int i = 0; i < l1 + l2; i++) {
			if (f3[i] % 2 == 1){
				IO.write(f3[i] + "  ");
			}
			if (f3[i] % 2 == 0) {
				IO.write(f3[i] + "  ");
				
			}
		}

Danke schon mal für die Hilfe!!
lg
 
Du brauchst zwei for-Schleifen und nicht nur eine. So wie du es formuliert hast, müsste das Programm das Array komplett ausgeben, weil jede Zahl entweder gerade oder ungerade ist.
Probiere es doch mal so:
Code:
		for (int i = 0; i < l1 + l2; i++) {
			if (f3[i] % 2 == 1){
				IO.write(f3[i] + "  ");
			}
		}
		for (int i = 0; i < l1 + l2; i++) {
			if (f3[i] % 2 == 0) {
				IO.write(f3[i] + "  ");
				
			}
		}
 

Neue Beiträge

Zurück