Herausforderung
Wenn Sie eine Binärzahl als Eingabe verwenden, "vereinfachen" Sie die Zahl mit einem vollständigen Programm oder einer Funktion.
Eingang
[binary]
binary
ist eine binäre Zahl, die über 0 liegt.
Ausgabe
Nehmen Sie die Eingabe, konvertieren Sie sie zur Basis 10 ohne Verwendung einer eingebauten Zahl. Wenn diese Zahl nur Einsen und Nullen enthält, konvertieren Sie sie in eine Zahl zur Basis 10, als wäre sie eine andere Binärzahl. Wiederholen Sie den Vorgang, bis die Zahl nicht mehr binär gelesen werden kann, und geben Sie diese Zahl aus.
Andere Informationen
Wenn der Eingang 1 ist, einfach ausgeben
1
. Ihr Programm sollte nicht unendlich weiter vereinfachen 1.Dies ist Codegolf, daher gewinnt die kürzeste Antwort in Bytes bis Dienstag (17. November).
Wenn etwas verwirrend ist, hinterlassen Sie einen Kommentar, in dem Sie angeben, was zu klären ist, und ich werde ihn entsprechend bearbeiten.
Builtins für die Basiskonvertierung sind nicht erlaubt.
Beispiele
Input | Output
1 | 1
1010 | 2
1011 | 3
1100100 | 4
1100101 | 5
1111110011 | 3