Exsheets:对一道题有两种解决方案,并分别打印出来

Exsheets:对一道题有两种解决方案,并分别打印出来

我正在使用 exsheets 编写一份包含数学问题的文档,并在文档末尾打印出每个问题的数值解。但是,我还想在另一部分中包含所选问题的计算解。因此,实际上我想要做的是能够为所选问题编写两组解决方案。在一个部分打印出一组解决方案,在另一个部分打印出另一组(计算)解决方案。

我可以手动写下可行的解决方案集,但我相信这可能会在以后的编辑中引起很多麻烦,因为问题计数器会不同步。

我该怎么做呢?

目前我有这样的东西:

\begin{question}%Y11C7G1
    Differentiate each function using the quotient rule. Express your answer in fully factored form and state any values of $x$ for which the tangent is horizontal
    \begin{tasks}(2)
        \task $y=\dfrac{x+1}{x-1}$
        \task $y=\dfrac{x^2-1}{x^2+1}$
        \task $y=\dfrac{x^2-a}{x^2-b}$
        \task $y=\dfrac{x^n-3}{x^n+3}$
    \end{tasks}
\end{question}

\begin{solution}
    \begin{tasks}(1)
        \task TODO
    \end{tasks}
\end{solution}  

\begin{question}%Y11C7G5
    Differentiate, stating any zeroes of the derivative:
    \begin{tasks}(2)
        \task $\dfrac{\sqrt{x}+1}{\sqrt{x}+2}$
        \task $\dfrac{x-3}{\sqrt{x+1}}$
    \end{tasks}
\end{question}

\begin{solution}
    \begin{tasks}(1)
        \task TODO
    \end{tasks}
\end{solution}  

\newpage
\section*{Solutions}
\printsolutions

答案1

您可以使用布尔开关:

\newif\ifshortsolution

\ifshortsolution{<short>}{<long>}然后您可以定义在解决方案环境中使用的命令:

\makeatletter
\newcommand\shortlongsolution[2]{%
  \ifshortsolution
    \expandafter\@firstoftwo
  \else
    \expandafter\@secondoftwo
  \fi
  {#1}%
  {#2}%
}
\makeatother

\shortsolutionstrue为了打印解决方案,您可以在以下时间之前或\shortsolutionsfalse之前设置开关\printsolutions

\newpage
\shortsolutiontrue

\section*{Short Solutions}
\printsolutions

\shortsolutionfalse

\section*{Long Solutions}
\printsolutions

完整示例:

\documentclass{article}
\usepackage{exsheets,tasks}

\newif\ifshortsolution

\makeatletter
\newcommand\shortlongsolution[2]{%
  \ifshortsolution
    \expandafter\@firstoftwo
  \else
    \expandafter\@secondoftwo
  \fi
  {#1}%
  {#2}%
}
\makeatother

\begin{document}

\begin{question}
\end{question}
\begin{solution}
  \begin{tasks}(1)
    \task \shortlongsolution{first short}{first long}
  \end{tasks}
\end{solution}

\begin{question}
\end{question}

\begin{solution}
  \begin{tasks}(1)
    \task \shortlongsolution{second short}{second long}
  \end{tasks}
\end{solution}

\newpage
\shortsolutiontrue

\section*{Short Solutions}
\printsolutions

\shortsolutionfalse

\section*{Long Solutions}
\printsolutions

\end{document}

enter image description here

相关内容