我怎样才能添加大箭头?

我怎样才能添加大箭头?

我现在有这个(用 LaTeX 完成):

在此处输入图片描述

我想要得到这个(用 OpenOffice 完成):

在此处输入图片描述

我怎样才能得到那些大箭?

完整文档在此,图中部分为:

\documentclass[a4paper,9pt]{scrartcl}
\usepackage{amssymb, amsmath} % needed for math
\usepackage[utf8]{inputenc} % this is needed for umlauts
\usepackage[ngerman]{babel} % this is needed for umlauts
\usepackage[T1]{fontenc}    % this is needed for correct output of umlauts in pdf
\usepackage[margin=2.5cm]{geometry} %layout

\begin{document}
\begin{tabular}{lll}
\textbf{Schritt 1}: euklidischer Algorithmus & & \textbf{Schritt 2}: nach Rest auflösen\\
$91=1 \cdot 71 + 21$    & $\rightarrow$     & $21 = 92 - 71$\\
$71=3 \cdot 21 + 8$     & $\rightarrow$     & $8 = 71 - 3 \cdot 21$\\
$21=2 \cdot 8 + 5$      & $\rightarrow$     & $5 = 21 - 2 \cdot 8$\\
$ 8=1 \cdot 5 + 3$      & $\rightarrow$     & $3 =  8 - 1 \cdot 5$\\
$ 5=1 \cdot 3 + 2$      & $\rightarrow$     & $2 =  5 - 1 \cdot 3$\\
$ 3=1 \cdot 2 + 1$      & $\rightarrow$     & $1 =  3 - 1 \cdot 2$
\end{tabular}

\textbf{Schritt 3}: so lange Reste einsetzen, bis eine Linearkombination der Form
$1 = x \cdot 92 + y \cdot 71$ gefunden ist:
\end{document}

(如果有比使用表格更好的方法,例如align*,我可以改变它。但是,无论如何我不知道如何获得那些大箭头。)

答案1

首先,这是怎样的?

在此处输入图片描述

我的策略:

  • TikZ在表格第一行的两列中放置一个箭头。

  • smash箭头,这样它们就不会影响表格的布局。

  • 将点放在(-2,0)里面boundingbox——这个技巧可以将每个箭头向右推 2 厘米。

  • 调整 的baselinetikzpicture将箭头稍微向上或向下移动。

代码:

\documentclass[a4paper,9pt]{scrartcl}
\usepackage{amssymb, amsmath} % needed for math
\usepackage[utf8]{inputenc} % this is needed for umlauts
\usepackage[ngerman]{babel} % this is needed for umlauts
\usepackage[T1]{fontenc}    % this is needed for correct output of umlauts in pdf
\usepackage[margin=2.5cm]{geometry} %layout
\usepackage{tikz}
\usetikzlibrary{shapes.arrows}

\begin{document}

\def\myDownArrow{\smash{
  \begin{tikzpicture}[baseline=-2mm]
    \useasboundingbox (-2,0);
    \node[single arrow,draw=black,fill=black!10,minimum height=2cm,shape border rotate=270] at (0,-1) {};
  \end{tikzpicture}
}}
\def\myUpArrow{\smash{
  \begin{tikzpicture}[baseline=-1mm]
    \useasboundingbox (-2,0);
    \node[single arrow,draw=black,fill=black!10,minimum height=2cm,shape border rotate=90] at (0,-1) {};
  \end{tikzpicture}
}}

\begin{tabular}{lll}
\textbf{Schritt 1}: euklidischer Algorithmus & & \textbf{Schritt 2}: nach Rest auflösen\\
$91=1 \cdot 71 + 21$ \myDownArrow & $\rightarrow$     & $21 = 92 - 71$  \myUpArrow\\
$71=3 \cdot 21 + 8$     & $\rightarrow$     & $8 = 71 - 3 \cdot 21$\\
$21=2 \cdot 8 + 5$      & $\rightarrow$     & $5 = 21 - 2 \cdot 8$\\
$ 8=1 \cdot 5 + 3$      & $\rightarrow$     & $3 =  8 - 1 \cdot 5$\\
$ 5=1 \cdot 3 + 2$      & $\rightarrow$     & $2 =  5 - 1 \cdot 3$\\
$ 3=1 \cdot 2 + 1$      & $\rightarrow$     & $1 =  3 - 1 \cdot 2$
\end{tabular}

\textbf{Schritt 3}: so lange Reste einsetzen, bis eine Linearkombination der Form
$1 = x \cdot 92 + y \cdot 71$ gefunden ist:
\end{document}

相关内容