如何从集合中输入特定的谜题?

如何从集合中输入特定的谜题?

我正在建立一个数学谜题数据库,每个 TEX 文件收集一年内的谜题,例如 2017.tex 可能有 10 个谜题,每个谜题及其解决方案都有一个标签。

现在我要进行演讲,并希望不时从这些文件中选择问题和解决方案。我应该使用\input\chapter命令吗?我不会在一个文件中使用所有谜题,也不想将每个谜题写成一个 TEX 文件。最好的方法是什么?

谢谢!!

答案1

我专门为这样的目的制作了一个包。它叫做exercisebank

假设您有2017.tex,并且其中您应该有以下格式的谜题和解决方案。

%% 2017.tex
%% Heads up! \end{solution} and \end{problem} can't have spaces in front of it and needs it's own line
\begin{problem}
  Puzzle 1 here
\end{problem}
\begin{solution}
  Solution 1 here
\end{solution}

\begin{problem}
  Puzzle 2 here
\end{problem}
\begin{solution}
  Solution 2 here
\end{solution}

现在你可以做

\documentclass{article}
\usepackage{exercisebank}
% You might want no part problem headers (only Problem 1, Problem 2 etc), in that case: uncomment the line below:
% \exercisebanksetup{part problems=Off}
% To make a setup, you do this; \makeset{setupName}{puzzle-file}
% So to make a setup with all of the exercises from 2017:
\makeset{allof2017}{2017}
% Or you can cherry pick your favorites
\makeset{2017Favorites}{\select{2017}{1,2}}
\begin{document}
  % Then choose which to build
  \buildset{2017Favorites}
\end{document}

如果你最终使用它,请随时请求功能或报告错误这里


编辑:我现在遇到了一些其他可以做类似事情的软件包。所以我还应该提到例如xsim也可能满足您的要求,并且目前可能更稳定。此外,您可以查看 exerciseexamCTAN 上的主题。

相关内容