\documentstyle[11pt]{article}
\pagestyle{empty}                   % no page #'s
\setlength{\topmargin}{0.5 in}     % try to get 0.5'' top and bottom margin
\setlength{\textheight}{10.5 in}
\setlength{\footskip}{0pt}
\setlength{\footheight}{0pt}
\setlength{\headsep}{0pt}
\setlength{\headheight}{0pt}
\begin{document}\
\hspace*{\fill}{\LARGE{\bf Problems for the Adept}}\hspace*{\fill}
\par
\vspace {.1 in}
\hspace*{\fill}{\large{\bf Lesson 3}}\hspace*{\fill}
\par
\vspace{.4 in}
\normalsize

{\bf Simple exercises } \par

\begin{itemize}
\item Use the postscript random function to plot random points on the page.
See if you can spot any clusters (hence, evidence, that the random number
generator isn't truly random).
\item Play with the PostScript error handler so that it gives you more
information;  perhaps it would be a good idea to scale down the page so
that you can see things that would have been printed off the page.
\item Write a program to calculate the first 100 fibonacci numbers and
print them out.  Do this both recursively and iteratively.
\item Fractals (see margins).
\special{psfile=/charon/mit/amdehon/PS/fract.ps}
\item Plot a graph: given a set of points, draw a graph using discrete
lines.
\item Draw a bar graph: given a set of discrete data points draw
the corresponding bar graph.
\item Draw a landscape banner;  have your procedure take an array of
strings and produce the saying nicely centered on the page both vertically
and horizontally.
\end{itemize}
\vspace {0.3 in}
\par
{\bf Medium/difficult exercises}
\begin{itemize}
\item Plot an arbitrary user-supplied function (perhaps taking the function
as an argument {\it e.g. \{ {\bf sin} \} }).
\item Substitution cipher:  Write a function that takes two arguments:  a
string of 26 characters and a message string to encode.  Return the encoded
message string (assume the 26 letters are in the order they are to be
substituted for the original alphabet).  Also write a decoding routine.
\item Draw a landscape banner that may span multiple pages if its length is
appropriate; your procedure should take an array of strings and produce
text nicely centered both horizontally and vertically on the page. 
\end{itemize}

\end{document}

