Let's enjoy brainfuck. ~素因数分解編~

コード紹介

今回はbrainfuckで素因数分解をするプログラムの紹介をしたいと思います。

↓素因数分解をするコード

,>++++++++[<-------->-]
++
<-[
	+
	[>>>+<+<<-]>>>[<<<+>>>-]
	<[
		>>>>>+
		<<<<<<[>>>>+<+<+<<-]>>[<<+>>-]
		>[
			<<[->>>-<<]>[<]>-
		]<<
	]
	>>>[
		<<<<+>>>>>>[-]<<[-]>
	]>>
	[
		<<<<<<<[-]>>>>>>>[<<<<<<<+>>>>>>>-]
		<<<<<++++++++[<++++++++>-]<.>++++++++[<-------->-]>>>>>>
	]
	<<<<<<<<-
]

入力は

です。

実行例

入力が R(18番目のアルファベット) の場合、出力は BCC(2,3,3) となり、

18 = 2*3*3 であることが確認できます。

こちら で動作を確認できます。

改行したバージョン

,>++++++++[<-------->-]
++
<-[
	+
	[>>>+<+<<-]>>>[<<<+>>>-]
	<[
		>>>>>+
		<<<<<<[>>>>+<+<+<<-]>>[<<+>>-]
		>[
			<<[->>>-<<]>[<]>-
		]<<
	]
	>>>[
		<<<<+>>>>>>[-]<<[-]>
	]>>
	[
		<<<<<<<[-]>>>>>>>[<<<<<<<+>>>>>>>-]
		<<<<<++++++++[<++++++++>-]<.>++++++++[<-------->-]>>>>>>
	]
	<<<<<<<<-
]