Ein Bit schwebt vom LSB zum MSB und bewegt sich jedes Mal um eine Position, bis es oben im Container schwebt :
0000
0001
0010
0100
1000
Sobald ein Bit nach oben schwebt, beginnt ein anderes Bit seine Reise und stoppt, wenn es auf ein anderes Bit trifft:
1001
1010
1100
Dies geschieht so lange, bis der Container mit Bits gefüllt ist:
1101
1110
1111
Herausforderung
Geben Sie bei einer Ganzzahl die " Bit Floating Sequence " für einen Container mit dieser Anzahl von Bits aus.
- Jeder Term der Sequenz kann durch ein beliebiges Trennzeichen Ihrer Wahl getrennt werden.
- Bearbeiten : Sequenz als Dezimalzahl mit Integer - Zahlen dargestellt werden, die durch die erste therm Anfänge
0. - Die Containergröße sollte größer als Null und bis zur Anzahl der Bits der größten Ganzzahl sein, die von der Sprache Ihrer Wahl unterstützt wird. Sie können davon ausgehen, dass die Eingabe immer dieser Anforderung entspricht.
Beispiele
Es wird nur die numerische Sequenz benötigt, die binäre Darstellung wird als Beispiel gezeigt:
Für 1 :
0 10 -> 0 1 -> 1Für 3 :
0 1 2 4 5 6 7000 -> 0 001 -> 1 010 -> 2 100 -> 4 101 -> 5 110 -> 6 111 -> 7Für 4 :
0 1 2 4 8 9 10 12 13 14 150000 -> 0 0001 -> 1 0010 -> 2 0100 -> 4 1000 -> 8 1001 -> 9 1010 -> 10 1100 -> 12 1101 -> 13 1110 -> 14 1111 -> 15Für 8 :
0 1 2 4 8 16 32 64 128 129 130 132 136 144 160 192 193 194 196 200 208 224 225 226 228 232 240 241 242 244 248 249 250 252 253 254 25500000000 -> 0 00000001 -> 1 00000010 -> 2 00000100 -> 4 00001000 -> 8 … … … 11111000 -> 248 11111001 -> 249 11111010 -> 250 11111100 -> 252 11111101 -> 253 11111110 -> 254 11111111 -> 255
[0.0, 1.0]
0 -> [0, 1]