Skip to content

Instantly share code, notes, and snippets.

@zr-tex8r
Created September 24, 2023 07:50
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save zr-tex8r/e6a58b70ad9ca822db62f7621d133865 to your computer and use it in GitHub Desktop.
Save zr-tex8r/e6a58b70ad9ca822db62f7621d133865 to your computer and use it in GitHub Desktop.
TeX:チョット読みにくいFizzBuzzプログラム

チョット読みにくいFizzBuzzプログラム🙃

実行方法

plain TeX専用である(LaTeXでは動かない)。

fizzbuzz.tex自体は「ライブラリ」であり、これを読み込むと\FizzBuzzマクロが定義される。

  • \FizzBuzz{<整数n>}: 1からnまでのFizzBuzz文字列を出力する。

例えばmain.texを次のように書く:

\input fizzbuzz
\FizzBuzz{100}
\bye

次のコマンドを実行すると出力のDVIファイルが得られる。

tex main.tex

もちろん、pdfTeXを使うと直接PDFファイルが得られる。

pdftex main.tex
{\^^$^^%^^&\&{\^^%^^$^^%^^&}\&\.{}\&\|{\.1\.}\^^$^^%^^&\!{\^^$^^%^^&}%+?
\!\#{\^^%^^.^^$^^,^^)^^.^^%^^#^^(^^!^^2}{}\!\%{\^^'^^,^^/^^"^^!^^,}\!\_{
}\!\:{\^^$^^)^^-^^%^^.^^$^^%^^&}\:\(\|\&~{\!\(##\|){}}~\(<+.Fizz*)\:\*\|
\!\@{\^^#^^!^^4^^#^^/^^$^^%}\@`:\@`\\\&~{:@}~`;\@`^~`'~`^:@`,~`:}~`$\@`~
~`@~`''!:!\`{:;;:@}\!:>{:@;;)^^&+}:#~`\#:*~\`:# \#:*~`~~`:{\!:@@~Buzz,%)
:@`?\@`@\@`|:@`?\!\^^);;&@+~,:&:@?~\.Fizz,:&$~\!:/##\|{},$\:\?|\|\!:<~''
,:!:||~''7,:&\+{:>~;;!''$:<^^!''.;;#;;%},\&$~`:<,:#$\+:#-\@`:#\&\?''$~%.
:(:*/8;*):>~^^$''):<'')^^$''%,,\&$~\!:?|##:|~\:##:|\|,,$:+:#:@`,\!:|''/{
}\!:|?~:>~;;.''%\||\.''(^^%^^,\|;;/,,:(Fizz`_):@`^^:\@\`:+:#:@`,\!:|^^"~
,:|?\?;;)~^^)''&''$^^)''-,\&:|''%~:/Buzz,:|?:?;;&~^^&^^),:+:#\@:@`$\!:<{
}:!\$~:>~:<''(''%,,\@`:;;:11:_\|?:?^^.{;;.:|''%\.''-;;";;%\|''"}\!:|^^)~
,\/~]Fizz,\#:@\@`$:&\||@{:$\#}:#\@`,:&\||{:$\#}\#:@`$:&\=~:>~;;,^^%:<,,%
:!$~^^$'')''-;;%;;.@,:&\?''+~:>~$,,\&:?'',{:>~$;;);;),}\&\||?~:/13,:?|$%
\&$~\!$##\|~{##\|},,$\/~14[,:&:*~\>{^^-\|''%:.;;,\<^^):|^^/\.^^,\|''),}%
:&:'~\>~@''.;;%,,:?|\;;!?\!:??~\%\=:FizzBuzz:;;&?,\?|:;;"?:?|:;;'?\?|%//
:''.?\?|:''-?\/~>16,\?|:@:?|:;;/?:&:#~\!:@~:+:?;;+\':':!:''/?$:''.?\^^"?
$:||?$:@?:^^"?$\||@$:@@:^^"?$~\|:||@,$~:@?:@@,\''/?:/~17,\$:?'')\?;;+=%&
:;;-?:':;;'?\$:?;;&$:_:''!?,,:#:(|Fizz()\?|:;;&?:&\#{:!:''&?##\|~:!:;;-?
$~##:|,:?^^+:`\^^!?,}:#\/~>19,:&:#~\%:!:'''?##:|\^^!?~\$:?''&,,%%%%%%%%%
\#:/~$/Buzz,\%:=:''!?\@:&:@~\%:!\''.?~:$:?''.:?;;+,,:@\&:@~\%:!%% __ __
:^^"?##\|##:||~:?;;,:?''+\?''$:?^^,##:|\*:?^^,##\|$\.:/~])Fizz,%% / |_>
:$\?''):?''+=:?;;,\!:;;/?$~##\||,:$\?''&,,\@\/~//\-\\_22//,\??}%% /_ | \
\input fizzbuzz
\FizzBuzz{100}
\bye
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment