Skip to content

Instantly share code, notes, and snippets.

@zr-tex8r
Last active January 27, 2016 11:20
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/6c1484ae08f848e60556 to your computer and use it in GitHub Desktop.
Save zr-tex8r/6c1484ae08f848e60556 to your computer and use it in GitHub Desktop.
TeX: Compute and typeset all the digits of the largest known prime
% This is a plain TeX document.
% Typeset with 'tex' or 'pdftex' command.
\def\exponent{74207281}
\catcode64=11 %-------------------------
\chardef\p@dgt\@ne \chardef\p@ten=10
\newcount\p@t \newcount\p@nm
\newbox\p@bxp \newbox\p@bxc \newbox\p@bxx
\def\p@rep#1#2{%
\p@t=#1\relax \loop \ifnum\p@t>\z@ \advance\p@t\m@ne #2\repeat}
\def\p@sep{\hskip\z@skip}
\def\p@page#1#2#3{%
\setbox\p@bxx\hbox{\p@rep\p@ten{\the\p@dgt}}%
\setbox\p@bxc\hbox{\p@rep\p@ten{\unhcopy\p@bxx\p@sep}\unskip}%
\setbox\p@bxp\vbox{\p@rep{#1}{\copy\p@bxc}%
\p@rep{#2}{\unhcopy\p@bxx\p@sep}\p@rep{#3}{\the\p@dgt}}}
\def\p@bio{1000000000}
\def\compmain{%
\p@t=\exponent\relax \ifnum\p@t<\z@ \p@t\z@ \fi
\ifnum\p@t<\p@bio\relax \advance\p@t\p@bio\relax \fi
\expandafter\p@cm@a\number\p@t}
\def\p@cm@a#1{\p@cm@b}
\def\p@cm@b#1#2#3#4#5#6#7#8#9{\p@cm@c{#1#2#3#4#5}{#6#7}{#8}{#9}}
\def\p@cm@c#1#2#3#4{%
\p@page{100}\z@\z@\p@rep{#1}{\copy\p@bxp\vfil\eject}%
\ifnum#2#3#4>\z@ \p@page{#2}{#3}{#4}\copy\p@bxp\vfil\eject \fi}
\catcode64=12 %-------------------------
\hsize=380pt \hoffset=36pt
\vsize=720pt \voffset=-14pt \topskip=7.2pt
\font\fdgt=t1xtt at 7.2pt \fdgt
\font\fnom=cmss10
\parindent=0pt
\baselineskip=7.2pt
% titlepage
\nopagenumbers
\font\fttlt=cmssdc10 at 60pt
\font\fttls=cmssdc10 at 36pt
\font\fsttl=cmss10 at 24pt
\hrule width 0pt \vfill
\centerline{\fttls THE VALUE OF}\vskip 40pt
\centerline{\fttlt 2\raise1ex\hbox{\fttls\exponent} -- 1}
\vfill\vfill\centerline{\fsttl IN BINARY}\vskip40pt \eject
% body
\footline={\hss\fnom---\ \folio\ ---\hss}\pageno=1
\compmain
\bye
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment