六角,112 91字节
网格大小6(91字节)
? { 2 . . <
/ = { * = \ "
. & . . . { _ '
. . { . . } ' * 2
_ } { / . } & . ! "
. > % . . < | . . @ |
\ . . \ . | ~ . . 3
. . " . } . " . "
. & . \ = & / 1
\ = { : = } .
[ = { { { <
精简版
?{2..</={*=\".&...{_'..{..}'*2_}{/.}&.!".>%..<|..@|\..\.|~..3..".}.".".&.\=&/1\={:=}.[={{{<
网格大小7(112字节)
? { 2 " ' 2 <
/ { * \ / : \ "
. = . = . = | . 3
/ & / { . . } { . "
. > $ } { { } / = . 1
_ . . } . . _ . . & . {
. > % < . . ~ & . . " . |
| . . } - " . ' . @ | {
. . . = & . . * ! . {
. . . _ . . . _ . =
> 1 . . . . . < [
. . . . . . . .
. . . . . . .
在线尝试!
精简版:
?{2"'2</{*\/:\".=.=.=|.3/&/{..}{.".>$}{{}/=.1_..}.._..&.{.>%<..~&..".||..}-".'.@|{...=&..*!.{..._..._.=>1.....<[
非高尔夫版本以提高可读性:
近似内存布局
灰色路径(内存初始化)
? Read input as integer (Input)
{ Move to memory edge "Divisor left"
2 Set current memory edge to 2
" ' Move to memory edge "Divisor right"
2 Set current memory edge to 2
" Move to memory edge "Multiplier"
3 Set current memory edge to 3
" Move to memory edge "Temp 2"
1 Set current memory edge to 1
{ { { Move to memory edge "Modulo"
= Turn memory pointer around
[ Continue with next instruction pointer
循环进入
% Set "Modulo" to Input mod Divisor
< Branch depending on result
绿色路径(值仍可被2整除)
} } { Move to memory edge "Result"
= Turn memory pointer around
* Set "Result" to "Temp 2" times "Multiplier" (3)
{ = & Copy "Result" into "Temp2"
{ { } } = Move to "Temp"
: Set "Temp" to Input / Divisor (2)
{ = & Copy "Temp" back to "Input"
" Move back to "Modulo"
红色路径(值不再可以被2整除)
} = & " ~ & ' Drag what's left of "Input" along to "Multiplier"
* Multiply "Multiplier" with "Temp 2"
! @ Output result, exit program