Informatiker Board (http://www.informatikerboard.de/board/index.php)
- Themengebiete (http://www.informatikerboard.de/board/board.php?boardid=1)
-- Praktische Informatik (http://www.informatikerboard.de/board/board.php?boardid=6)
--- (Array) Zahlen sortieren (http://www.informatikerboard.de/board/thread.php?threadid=3776)


Geschrieben von javax am 12.11.2017 um 12:08:

  (Array) Zahlen sortieren

Meine Frage:
Hallo,

bin gerade dabei JavaScript zu lernen. Folgendes versuche ich: Mittels Benutzereingabe möchte ich zahlen eingeben, diese sollen, solange keine ungültige Eingabe erfolgt,in einem array gespeichert werden und später sortiert ausgegeben werden.

Mein code klappt auch einigermaßen, jedoch habe ich ein Problem. Die erste angegebene Zahl wird nicht ausgegeben. Ich vermute, dass der Fehler an der variable "einagabe" liegt, da ich die zwei mal verwende. Aber ich weiß nicht wie ich es lösen soll :/


Meine Ideen:
mein Ansatz:

<script type="text/javascript">

var zahl = [];
var eingabe = prompt('Geben Sie ein ganze Zahl ein!', '');
while (isNaN(eingabe) === false) {
eingabe = prompt('Geben Sie ein ganze Zahl ein!', '');
zahl.push(eingabe);
}

zahl.sort();
console.log(zahl);

</script>



Geschrieben von eulerscheZahl am 12.11.2017 um 12:48:

 

Entweder ein zweites zahl.push(eingabe); vor die Schleife oder diese Eingabe weglassen.
Ich habe dir ein parseInt und eine Komparator im sort ergänzt, sonst sortierst du alphabetisch statt numerisch.
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
var zahl = [];
while (true) {
    var eingabe = prompt('Geben Sie ein ganze Zahl ein!', '');
    if (isNaN(eingabe)) break;
    zahl.push(parseInt(eingabe));
}

zahl.sort((a, b) => a - b);
console.log(zahl);


Forensoftware: Burning Board, entwickelt von WoltLab GmbH