我想用 TeX 做一个“看起来像”的测验
问题 1) 设 $f(x)=x^2$。求 $f'(1)$。
问题 2)设 $A$ 是一个矩阵,并且 $$A=\begin{bmatrix}3&1\0&1\end{bmatrix}$$ 那么 $|A|$ 的值是多少?
答案1)2
答案2)3
我制作了一个 TeX 文件“写成”
\documentclass{article}
\usepackage{amsmath,amssymb}
\newcounter{num}
\newcommand{\prob}{\par\bigskip\bigskip\noindent\refstepcounter{num}\textbf{Problem \arabic{num}) }}
\newcommand{\ans}{\par\bigskip\bigskip\noindent\refstepcounter{num}\textbf{Answer \arabic{num}) }}
\begin{document}
\prob
Let $f(x)=x^2$.
Evaluate $f'(1)$.
\prob
Let $A$ be a matrix such that
$$A=\begin{bmatrix}3&1\\0&1\end{bmatrix}.$$
What is the value of $|A|$?
\setcounter{num}{0}
\ans
2
\ans
3
\end{document}
除了问题陈述和答案是分开的之外,它可以很好地打印结果。
我想在问题 1 之后立即输入答案 1,这样可以避免多种错误。
我该如何修复我的代码?
答案1
answerdelayed
使用包的选项exercise
,您可以在代码中的问题附近写下答案,但仅在您喜欢时才打印它们\shipoutAnswer
。
我认为exercise
这是最简单的练习包,如果你发现它的文档很长,我不知道你会对 TikZ 有何评价!:D
\documentclass{article}
\usepackage{amsmath,amssymb}
\usepackage[lastexercise,answerdelayed]{exercise}
\renewcommand{\ExerciseName}{Problem}
\renewcommand{\ExerciseHeader}{\noindent\ExerciseName\ \ExerciseHeaderNB)}
\renewcommand{\AnswerName}{Answer}
\renewcommand{\AnswerHeader}{\noindent\AnswerName\ \ExerciseHeaderNB)\ }
\begin{document}
\begin{Exercise}
Let $f(x)=x^2$.
Evaluate $f'(1)$.
\end{Exercise}
\begin{Answer}
2
\end{Answer}
\begin{Exercise}
Let $A$ be a matrix such that
\[A=\begin{bmatrix}3&1\\0&1\end{bmatrix}.\]
What is the value of $|A|$?
\end{Exercise}
\begin{Answer}
3
\end{Answer}
\shipoutAnswer
\end{document}
编辑:如果您更喜欢命令而不是环境:
\documentclass{article}
\usepackage{amsmath,amssymb}
\usepackage[lastexercise,answerdelayed]{exercise}
\renewcommand{\ExerciseName}{Problem}
\renewcommand{\ExerciseHeader}{\noindent\ExerciseName\ \ExerciseHeaderNB)}
\renewcommand{\AnswerName}{Answer}
\renewcommand{\AnswerHeader}{\noindent\AnswerName\ \ExerciseHeaderNB)\ }
\newcommand{\prob}[1]{\begin{Exercise}#1\end{Exercise}}
\newcommand{\ans}[1]{\begin{Answer}#1\end{Answer}}
\begin{document}
\prob{Let $f(x)=x^2$.
Evaluate $f'(1)$.}
\ans{2}
\prob{Let $A$ be a matrix such that
\[A=\begin{bmatrix}3&1\\0&1\end{bmatrix}.\]
What is the value of $|A|$?}
\ans{3}
\shipoutAnswer
\end{document}