适合练习答案的环境

适合练习答案的环境

有不同的软件包可以将练习答案添加到文档中,例如答案锻炼,但它们都有点过度,例如,它们重新格式化并重新编号我文档中的练习列表。

我想要实现的只是这一点:我有一个练习列表,这些练习在标准枚举环境中格式化,我想将解决方案放在下面,但在文档的开头,我希望能够定义某种“标志”。 如果标志为“开”,则文档应打印出带有解决方案的讲义,如果标志为“关”,则它应该跳过解决方案并打印出文档,就好像解决方案从未存在过一样(因此也不会留下空白或类似的东西)。

理想情况下是这样的:

List of exercises:

\begin{enumerate}
\item 2+2
  \begin{solution}
  4
  \end{solution}
\item 3-1
  \begin{solution}
  2
  \end{solution}
\item 5+2
  \begin{solution}
  7
  \end{solution}
\end{enumerate}

如果标志关闭,则所有解决方案都应被彻底跳过。

有没有办法做到这一点,最好尽可能简单?

答案1

如果没有环境,只需\solution

\documentclass{article}
\newif\ifsolution
\def\solution#1{\ifsolution #1 \else \relax\fi}

\begin{document}

\solutiontrue

\begin{enumerate}

\item 2+2

\solution{4}
\item 3-1

\solution{2}
\item 5+2

\solution{7}
\end{enumerate}

\solutionfalse

\begin{enumerate}
\item 2+2

\solution{4}
\item 3-1

\solution{2}
\item 5+2

\solution{7}
\end{enumerate}

\end{document}

在此处输入图片描述

相关内容