嵌套下划线

嵌套下划线

您将如何实现这样的目标?

期望输出

现在我的代码如下所示:

90\underset{+90}{\underset{\huge \smile}{\underset{+90}{\underset{\huge \smile}{}}180\underset{+180}{\underset{\huge \smile}{}}}}360\underset{+240}{\underset{\huge \smile}{}}600

代码本身显然很乱,但它产生了上面的输出,问题是我似乎无法让第二个嵌套下划线工作,我的意思是下划线不在图中从 +180 到 +240。有什么想法吗?另外,如果你有更好的方法,请告诉我 :P

答案1

在这里,我介绍

\bsmile[<under-depth-offset>]{<main-text>}{<underset-text>}

如果#2为空白,则排版的宽度源自\smile...否则源自的宽度#2

数学家协会

\documentclass{article}
\usepackage{stackengine}
\newcommand\bsmile[3][0pt]{\if\relax#2\relax\def\tmp{F}\else\def\tmp{T}\fi
  \ensurestackMath{\stackengine{#1}{#2}{%
  \stackengine{1pt}{\mbox{\huge$\smile$}}{\scriptstyle#3}{U}{c}{F}{T}{S}}
  {U}{c}{F}{\tmp}{S}}}
\begin{document}

$90\bsmile{}{+90}\bsmile[16pt]{180}{+90}\bsmile{}{+180}360\bsmile{}{+240}600$
\end{document}

在此处输入图片描述

答案2

语法不太复杂:

\documentclass{article}
\usepackage{amsmath,array}

\newcommand{\differences}[1]{%
  \begingroup
  \def\?##1{\hidewidth\scriptstyle\mathstrut##1\hidewidth\kern0pt}%
  \def\U{\mbox{\huge$\smile$}}%
  \settowidth{\dimen255}{\U}
  \renewcommand{\arraystretch}{0}%
  \setlength{\arraycolsep}{0pt}%
  \begin{array}{*{20}{w{c}{\dimen255}}}
  #1
  \end{array}%
  \endgroup
}

\begin{document}

\[
\differences{
  90 && 180 && 360 && 600 \\
  & \U && \U && \U  \\
  & \?{+90} && \?{+180} && \?{+240} \\
  && \U && \U \\
  && \?{+90} && \?{+60} \\
  &&& \U \\
  &&& \?{+30}
}
\]

\[
\differences{
  640 && 231 && 100 && 91 && 1003 \\
  & \U && \U && \U && \U \\
  & \?{-409} && \?{-131} && \?{-9} && \?{+912} \\
  && \U && \U && \U \\
  && \?{+278} && \?{+122} && \?{921} \\
  &&& \U && \U \\
  &&& \?{-156} && \?{+799} \\
  &&&& \U \\
  &&&& \?{955}
}
\]

\end{document}

主号码不得超过四位数字。

在此处输入图片描述

答案3

这是一个简单的数组。

\documentclass[fleqn]{article}
\usepackage{mathtools}
\usepackage{relsize}
\newcommand{\scriptclap}[1]{\mathclap{\scriptstyle #1}}
\newcommand{\LargerSmile}{\mathlarger{\mathlarger{\mathlarger{\mathlarger\smile}}}}
\begin{document}
Some text.
\[ \begin{array}[t]{*7{c@{}}}
 90 && 180 && 360 && 600\\[-1ex]
 & \LargerSmile & & \LargerSmile & & \LargerSmile &\\[-1ex]
 &\scriptclap{+90} & &\scriptclap{+180} && \scriptclap{+240}&\\[-1ex]
 & & \LargerSmile & & & &\\[-1ex]
 & & \scriptclap{+90} & & & &\\
\end{array} \quad\dots \text{more stuff} \]
More text.
\end{document}

在此处输入图片描述

只是more stuff为了表明您可以将顶行与公式的其他部分对齐。如果不需要,请删除[t]之后的\begin{array}

对于更复杂的任务我建议 TiZ 和tikzmark图书馆。

相关内容