Array: Zahlen tauschen?

3 Antworten

Schön mit Kommentaren:

public static void main(String[] args) {
	Scanner scanner = new Scanner(System.in); 
	scanner.useDelimiter("\\D+");
	
	// Zahlen einlesen
	System.out.println("Bitte Zahlen eingeben (0 = Ende)");
	int[] numbers = scanner.tokens().mapToInt(Integer::parseInt).takeWhile(num->num!=0).limit(20).toArray();
	scanner.close();
	
	// Prüfen, ob 0 als erstes eingegeben wurde
	if (numbers.length == 0) {
		System.out.println("Naja, du musst auch schon was anderes als 0 eingeben, wenn ich was tauschen soll.");
		return;
	}
	
	// Zahlen tauschen
	for (int i = 1; i<numbers.length; i+=2) {
		int temp = numbers[i-1];
		numbers[i-1] = numbers[i];
		numbers[i] = temp;
	}
	
	// Array ausgeben
	System.out.println("Tadaa, ein Ergebnis: " + Arrays.toString(numbers));
}

Ich glaube das müsste ca. so sein. Lösung ist in Python3

zahlen = []
zahlenCount = 20


while i < 20:
    #Ganzzahl einlesen
    while True:
        try:
            userZahl = int(input('Zahl: '))
            break
        except ValueError:
            print('Bitte nur Ganzzahlen eingeben!')
    if userZahl == 0:
        break
    zahlenCount += 1
    zahlen += [userZahl]


print(zahlen)
if zahlenCount > 0:
    for i in range(0,zahlenCount,2):
        if i+1 < zahlenCount:
            temp = zahlen[i]
            zahlen[i] = zahlen[i+1]
            zahlen[i+1] = temp
    print(zahlen)
else:
    print('Null Zahlen in der Liste :/')
Woher ich das weiß:Studium / Ausbildung – Informatikstudent

bschbaum 
Beitragsersteller
 27.04.2022, 22:25

Kannst du auch Java oder nur Python?

Jetzt registrieren, um alle Antworten zu lesen!