我尝试将练习放在左边,将解决方案放在右边。如果解决方案与练习在同一行,那么编码会更容易(我认为)。
除了表格之外,还有其他简单的方法可以实现这一点吗?例如,告诉所有解决方案在水平绝对位置左对齐?
谢谢!
这大致就是我想要的
这是我的代码。它没有正确排列解决方案。
\documentclass{article}
\usepackage{ifthen}
\usepackage{pgf}
\usepackage{pgffor}
\setlength{\parindent}{0pt}
\pgfmathsetseed{\number\pdfrandomseed}
\newcommand{\InitVariables}
{
\pgfmathsetmacro{\a}{int(random(0,20)-10)}
\pgfmathsetmacro{\b}{int(random(0,20)-10)}
\pgfmathsetmacro{\c}{int(\a+\b)}
}
\newcommand{\blank}{\_\_\_\_\_}
\newcommand{\RandomSum}
{
\large
\InitVariables
\huge\(\a+\b=\)\blank \hspace{2cm} \(\a+\b=\c\)
% What do I write instead of \hspace{2cm} here?
\vspace{0.8cm}
}
\pagestyle{empty}
\begin{document}
\RandomSum
\RandomSum
\RandomSum
\RandomSum
\RandomSum
\RandomSum
\RandomSum
\RandomSum
\RandomSum
\RandomSum
\end{document}
PS:无论我在图片中使用了什么字体,我都不关心它是什么字体。
答案1
你需要一个tabular
:
\documentclass{article}
\usepackage{pgf}
\usepackage{pgffor}
\pgfmathsetseed{\number\pdfrandomseed}
\newcommand{\InitVariables}{%
\pgfmathsetmacro{\a}{int(random(0,20)-10)}%
\pgfmathsetmacro{\b}{int(random(0,20)-10)}%
\pgfmathsetmacro{\c}{int(\a+\b)}%
}
\newcommand{\RandomSum}{%
\InitVariables\edef\x{$\a\checkplus\b=$ & $\a\checkplus\b=\c$\noexpand\\}\x
}
\newcommand{\checkplus}[1]{\ifnum#1<0 \else+\fi#1}
\pagestyle{empty}
\begin{document}
\begin{tabular}{l@{\hspace{2cm}}l}
Exercises & Solutions \\
\hline
\RandomSum
\RandomSum
\RandomSum
\RandomSum
\RandomSum
\RandomSum
\RandomSum
\RandomSum
\RandomSum
\RandomSum
\end{tabular}
\end{document}
答案2
建议使用无宽度的盒子和幻影空间。
\documentclass{article}
\usepackage{showframe}
\usepackage{ifthen}
\usepackage{pgf}
\usepackage{pgffor}
\usepackage{mathtools}
\setlength{\parindent}{0pt}
\pgfmathsetseed{\number\pdfrandomseed}
\newcommand{\InitVariables}
{
\pgfmathsetmacro{\a}{int(random(0,20)-10)}
\pgfmathsetmacro{\b}{int(random(0,20)-10)}
\pgfmathsetmacro{\c}{int(\a+\b)}
}
\newcommand{\blank}{\rule{2em}{.4pt}}
\newcommand{\RandomSum}
{\LARGE%
\InitVariables%
$\mathrlap{\a + \b=\blank }$%
\phantom{This is the needed spacing}
$\a+\b=\c$\bigbreak
% What do I write instead of \hspace{2cm} here?
}
\pagestyle{empty}
\begin{document}
\RandomSum
\RandomSum
\RandomSum
\RandomSum
\RandomSum
\RandomSum
\RandomSum
\RandomSum
\RandomSum
\RandomSum
\end{document}