发布时间:2010-12-23 14:26:23
文章类别:宏包使用
原文地址:http://blog.sina.com.cn/s/blog_5e16f1770100nx67.html
QQ群:91940767/145316219/141877998/80300084/194770436
淘宝店:http://latexstudio.taobao.com
技巧续篇:http://latexstudio.net/
常见数学公式问题集下载
TeX的功能有多强大, 请看两个 TeX 宏例子.
第一个例子是重复某句话, 第二个例子是输入20个素数.
\documentclass{article}
\begin{document}
Two TeX macro examples.
%latex.yo2.cn
\newcount\s
\def\punishment#1#2{\s=#2
\loop\ifnum\s>0 #1 \advance\s by-1 \repeat}
\noindent\punishment{I must not talk in class!\\}{10}
\newif\ifprime \newif\ifunknown %boolean variables
\newcount\n \newcount\p \newcount\d
\newcount\a %integer variables
\def\primes#1{2,~3 %assume that #1 is at least 3
\n=#1 \advance\n by-2% n more to go
\p=5 % odd primes starting with p
\loop\ifnum\n>0 \printifprime\advance\p by2
\repeat}
\def\printp{, \ifnum\n=1 and ~\fi \number\p \advance\n by
-1}
\def\printifprime{\testprimality \ifprime\printp\fi}
\def\testprimality{{\d=3 \global\primetrue
\loop\trialdivision \ifunknown\advance\d by2 \repeat}}
\def\trialdivision{\a=\p \divide\a by\d
\ifnum\a>\d \unknowntrue\else\unknownfalse\fi
\multiply\a by \d
\ifnum\a=\p \global\primefalse\unknownfalse\fi}
%latex.yo2.cn
The following is the first 20th primes: \primes{20}.
\end{document}
具体的解释请见 Donald Ervin Knuth 的 The TeX book 的第20章.
效果图:
发表评论 取消回复