Schreiben Sie ein Programm oder eine Funktion, die nachweislich alle ganzen Zahlen genau einmal mit unendlich viel Zeit und Speicher ausgibt.
Mögliche Ausgaben könnten sein:
0, 1, -1, 2, -2, 3, -3, 4, -4, …
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, -1, -2, -3, -4, -5, -6, -7, -8, -9, 10, 11, …
Dies ist keine gültige Ausgabe, da dies niemals negative Zahlen auflisten würde:
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,…
Die Ausgabe muss dezimal erfolgen, es sei denn, Ihre Sprache unterstützt keine dezimalen Ganzzahlen (verwenden Sie in diesem Fall die natürliche Darstellung von Ganzzahlen, die Ihre Sprache verwendet).
Ihr Programm muss bis zu den Zahlen mit der größten Größe des Standard-Integer-Typs Ihrer Sprache arbeiten.
Jede Ganzzahl muss durch ein Trennzeichen (ein Leerzeichen, ein Komma, ein Zeilenumbruch usw.) vom nächsten getrennt werden, das weder eine Ziffer noch das negative Vorzeichen Ihrer Sprache ist.
Das Trennzeichen darf sich an keiner Stelle ändern.
Das Trennzeichen kann aus mehreren Zeichen bestehen, sofern keines davon eine Ziffer oder ein negatives Vorzeichen ist (z. B.
,
so gültig wie nur,
).Jede unterstützte Ganzzahl muss irgendwann nach einer begrenzten Zeit gedruckt werden.
Wertung
Das ist Code-Golf , also gewinnt die kürzeste Antwort in Bytes