On Jul 4, 1:13 am, Iván Nieto <
ivan.niet...@gmail.com> wrote:
> Input in the third row, maximum 524287. It needs heavy optimization:
> for a number N, it takes a little more than N seconds to start the
> output, so don't try huge numbers.
My version - avoids the operator having to scroll the level, so it's
"easier to see what's going on" because it's all on the screen at the
same time!
It processes a number up to 1599999 as binary input on the top row.
The time taken is constant, whatever number is entered. As there is
only space for 6 digits on the output, a black dot is painted at the
end to indicate an overflow (i.e. a first digit of 1). There's a bug I
couldn't be bothered to fix (as I only noticed it as I was writing
this, having already copy-pasted the level into the message box) which
causes it to crash if you ask it to process a number equal or greater
than 1600000. Easiest fix would be to put some other object over where
the highest bit would go, and declare the maximum input to be 1048575.
Example shown has input 1234567.
The intermediate representation is BCD ("binary coded decimal"). It
takes more time to get the "human-readable" version than to convert
the number to a form of decimal in the first place....
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
==