我正在为一个(数学)问题集编写答案,假设其中包含 10 个问题。为了生成数字序列,我使用了task
具有全局设置的环境\NewTasks[label = {\bf \arabic*.},label-width=4ex]{answers}[\a]
。
例如,假设问题 5、6、7 是“证明”类型的问题。这意味着我不需要在答案中显示它们的答案。因此,我想生成一个从 1 到 4 的序列,然后从 8 到 10 的序列。
我不知道如何跳过这三个特定数字。我正在使用 TexShop 4.58。
我的代码是
\usepackage{tasks}
\usepackage{amsmath, amsthm, amssymb, amsfonts}
\NewTasks[label = {\bf \arabic*.},label-width=4ex]{answers}[\a]
\begin{document}
\begin{answers}(5)
\a (C)
\a (D)
\a (D)
\a (C)
\a (D)
\a (A)
\a (C)
\a (C)
\a (A)
\a (B)
\end{answers}
\end{document}
它产生
请告诉我我应该做哪些改变才能获得期望的输出?
谢谢
答案1
你可以\addtocounter{task}{...}
在需要的地方做:
\documentclass{article}
\usepackage{tasks}
\NewTasksEnvironment[label=\arabic*.,label-format=\bfseries,label-width=4ex]{answers}[\a]
\begin{document}
\begin{answers}(4)
\a (A)
\a (C)
\a (D) \addtocounter{task}{3}
\a (C)
\end{answers}
\end{document}
如果您想直接输入要增加的数字:只需进行一些简单的数学运算即可:
\newcommand\gototask[1]{\addtocounter{task}{\numexpr#1-\value{task}\relax}}
\documentclass{article}
\usepackage{tasks}
\NewTasksEnvironment[label=\arabic*.,label-format=\bfseries,label-width=4ex]{answers}[\a]
\newcommand\gototask[1]{\addtocounter{task}{\numexpr#1-\value{task}\relax}}
\begin{document}
\begin{answers}(4)
\a (A)
\a (C)
\a (D) \gototask{6}
\a (C)
\end{answers}
\end{document}
两个例子都给出了
顺便说一句:在你的日志中你应该得到
Package tasks Warning: You've tried setting command `\NewTasks ' on line 6.
(tasks) However, command `\NewTasks ' is deprecated. Please use
(tasks) command `\NewTasksEnvironment ' instead. Refer to the
(tasks) manual for details.