Array: Zahlen tauschen?
Hey, weiß jemand wie man diese Aufgabe löst? Komme nicht weiter.
3 Antworten
Von gutefrage auf Grund seines Wissens auf einem Fachgebiet ausgezeichneter Nutzer
programmieren
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));
}
Von gutefrage auf Grund seines Wissens auf einem Fachgebiet ausgezeichneter Nutzer
programmieren
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