我正在使用exam
包来排版一些问题及其解决方案。
\question Evaluate $\int \frac{x^{4}}{x^{2}+1} d x$
\begin{solution}
Solution: $\int \frac{\mathrm{x}^{4}}{\mathrm{x}^{2}+1} \mathrm{~d} \mathrm{x}=\int \frac{\mathrm{x}^{4}-1+1}{\mathrm{x}^{2}+1} \mathrm{~d} \mathrm{x}$
$$
\begin{aligned}
&=\int \frac{x^{4}-1}{x^{2}+1}+\frac{1}{x^{2}+1} d x \\
&=\int\left(x^{2}-1\right) d x+\int \frac{1}{x^{2}+1} d x \\
&=\frac{x^{3}}{3}-x+\tan ^{-1} x+C
\end{aligned}
$$
\end{solution}
我想将“最终答案”与“解决方案”分开。
这样我就可以提供一份包含以下内容的讲义:
我希望发生这样的事情:
\question question
\answer answer %or even \begin{answer} \end{answer} <-- for final answer
\begin{solution}
solution
\end{solution}
现在,我应该能够使用\printanswers
(或类似的命令)打印最终答案并打印由控制的解决方案\printsolutions
。
我对软件包没有任何偏好exam
,我使用它是因为它的\printanswers
解环境很好。我愿意使用任何其他软件包。
编辑:向任何 latex 包/类添加一些自定义代码也是可以的。我只需要这个东西能工作。如果有延迟打印选项的功能就太理想了。
答案1
将以下代码添加到你的序言中应该可以解决问题
\usepackage{environ}
\newif\ifshortanswers%
\NewEnviron{shortanswer}{\ifshortanswers Ans. \BODY\fi}% Customize here
\def\printshortanswers{\shortanswerstrue}
然后你使用
\begin{shortanswer}
42
\end{shortanswer}
添加答案并\printshortanswers
打印答案。
您可以通过更改标有% Customize here