带有解决方案的数学表练习:需要包或模板建议

带有解决方案的数学表练习:需要包或模板建议

我想为我的学生创建一份练习和解决方案数学表。

我希望能够将每个练习和解决方案插入到一个部分中,例如:

\begin{exercise)
  $(2x-3)^2-(3x+2)^2=$
\end{exercise)
\begin{solution)
  $-(x+5)(5x-1)$
\end{solution)

并且能够在编译时获得这种渲染效果:

在此处输入图片描述

我看了一些包裹这里但我找不到我真正想要的东西。

你对我有什么建议吗?

答案1

这是可行的(语法不太符合要求,但是……)付出了很多努力xsim

主要思想是:

  • 为所需布局创建模板
  • 使用相同的环境身体进行练习使用参数solution作为练习环境选项的解决方案(而不是手动将其设置为每个练习的选项,也可以将其内置到模板中以便自动设置)
  • 创建快捷方式,以便\IfInsideSolutionTF仍然能够在练习和解决方案中使用不同的内容
  • 设置xsim使用新模板

如果代码中有什么不清楚的地方,请询问。

\documentclass{article}
\usepackage[no-files]{xsim}
\usepackage{needspace}
\usepackage{tasks}

\DeclareExerciseEnvironmentTemplate{custom}{%
  \par\vspace{\baselineskip}
  \Needspace*{2\baselineskip}
  \noindent\sffamily
  \textbf{\XSIMmixedcase{\GetExerciseName}~\GetExerciseProperty{counter}}%
  \GetExercisePropertyT{subtitle}{\hspace{3em}{\small#1}}\par
  \normalfont
}{}

\DeclareExerciseEnvironmentTemplate{flushright}{%
  \begin{flushright}
  \begin{minipage}{.4\linewidth}
    \textsf{Solutions:}\par\normalfont
}{%
  \end{minipage}%
  \end{flushright}%
}

\xsimsetup{
  exercise/within = section ,
  exercise/template = custom ,
  solution/template = flushright
}

\renewcommand*\theexercise{\thesection-\arabic{exercise}}

\newcommand\QA[2]{\IfInsideSolutionTF{#2}{#1}}

\begin{document}

\setcounter{section}{1}
\setcounter{exercise}{30}

\begin{exercise}[ID=one,solution,subtitle=Factorize as much as possible the following expressions.]
  \begin{tasks}
    \task \QA{$(2x-3)^2 - (3x-2)^2 =$}{$-(x+5)(5x-1)$}
    \task \QA{$(x^2-25) - 2(5-x)(x+6) =$}{$(x+5)(3x-17)$}
    \task \QA{$2x(x+2) + (x+1)^2 + 2 =$}{$3(x+1)^2$}
  \end{tasks}
\end{exercise}
\printsolution{exercise}{one}

\end{document}

在此处输入图片描述

相关内容