如何绘制一维数组

如何绘制一维数组

我想要画这样的东西:绘制一维数组的更简单或更好的方法问题是我需要更改第二个数组的值,但我不知道如何使用堆栈而不是 tikz 来做到这一点。

谢谢

答案1

您只需要向新的宏添加另一个参数(\boxcol)。

\documentclass{article}
\usepackage{stackengine}
\def\mbx#1{\fbox{\makebox[1.5cm]{#1}}}
\def\xdownarrow{\raisebox{-1.9ex}{%
  \stackengine{0pt}{$\downarrow$}{\rule{.5pt}{4ex}\kern.1pt}{O}{c}{F}{F}{S}}}
\newcommand{\boxcol}[3]% #1=first row, #2=second row, #3=third row
{\Longstack{%
  t#1\\\mbx{#1}\\$+$\\\mbx{#2}\\\xdownarrow\\\mbx{#3}}\kern-\fboxrule}
\setstackEOL{\\}
\renewcommand\stacktype{L}
\setstackgap{L}{2em}
\begin{document}
\Longstack{\\v1\\\\v2\\\\v1}
\boxcol{0}{5}{0}%
\boxcol{1}{4}{2}%
\boxcol{2}{3}{4}%
\boxcol{3}{2}{6}%
\boxcol{4}{1}{8}%
\boxcol{5}{0}{10}%
\end{document}

演示

相关内容