如何取得 foreach 迴圈輸出的製表符

如何取得 foreach 迴圈輸出的製表符

有沒有一種簡單/基本的方法可以在這裡獲得“標籤”?

在此輸入影像描述

請注意,行數和列數基本上是可變的或取決於循環。

\documentclass[a4paper]{article}
\usepackage{tikz}

\newcounter{rowno}
\setcounter{rowno}{-1}
%\stepcounter{rowno}
%\therowww
\begin{document}
\def\Rows{7}
\foreach \n in {1,...,\Rows}{%%
%\noindent\n,~
\foreach \col in {1,...,\Rows}{% 
\pgfmathsetmacro\filled{\col<=\n ? 1 : 0} 
\pgfmathsetmacro\first{\col==\n ? 1 : 0} 
\noindent\ifnum\filled=1 \stepcounter{rowno}%
         \ifnum\first=1 \col f, \therowno%
            \else  \col,\therowno\fi%
           ~~~ \else  x\fi
}\\%
}%%
\end{document}

答案1

是的。該tabto軟體包可以提供幫助。這裡,\tabstart定義了表格的左邊距,長度\tabinc給了列間距增量。

\documentclass[a4paper]{article}
\usepackage{tikz,tabto}
\newlength\currtab
\newlength\tabinc
\setlength\tabinc{30pt}
\def\tabstart{0pt}
\newcounter{rowno}
\setcounter{rowno}{-1}
%\stepcounter{rowno}
%\therowww
\begin{document}
\def\Rows{7}
\foreach \n in {1,...,\Rows}{%%
\noindent
\setlength{\currtab}{\tabstart}%
\tabto{\currtab}%
%\noindent\n,~
\foreach \col in {1,...,\Rows}{% 
\pgfmathsetmacro\filled{\col<=\n ? 1 : 0}%
\pgfmathsetmacro\first{\col==\n ? 1 : 0}%
\noindent\ifnum\filled=1 \stepcounter{rowno}%
         \ifnum\first=1 \col f, \therowno%
            \else  \col,\therowno\fi%
            \else  x\fi
  \global\addtolength{\currtab}{\tabinc}%
  \tabto{\currtab}%
}%
}%%
\end{document}

在此輸入影像描述

答案2

在此輸入影像描述

\documentclass[a4paper]{article}



\begin{document}
\def\Rows{7 }
\newcount\rrr \rrr=1
\newcount\ccc \ccc=1
\newcount\ttt \ttt=0

\loop
{%
\loop
\makebox[3em][l]{%
\ifnum\rrr<\ccc
x%
\else
\the\ccc
\ifnum\rrr=\ccc f\fi
,\the\ttt
\global\advance\ttt1
\fi
}
\ifnum\ccc<\Rows
\advance\ccc1
\repeat
}
\par
\ifnum\rrr<\Rows
\advance\rrr1
\repeat

\end{document}

答案3

在此輸入影像描述

\documentclass[margin=5mm, varwidth]{standalone}
\usepackage{tikz}
\begin{document}

\section{Normal Tabbing}
\begin{tabbing}
Left \= Middle \= Right \kill
1 \> 2 \> 3 \\
\end{tabbing}

\section{Foreach Tabbing}
\newcommand\tabrow[1]{%
\setlength{\topsep}{2pt}%
\setlength{\partopsep}{0pt}%
\begin{tabbing}
Left \= Middle \= Right \kill% tabhead
%1 \> 2 \> 3    %\\
#1    %\\
\end{tabbing}}
%Test: \tabrow{1 \> 2 \> 3}

\foreach \m in {0,1,...,7}{
\ifnum\m=0 \tabrow{$m$ \> $m^2$ \> $m+1$}% 
\else%
\pgfmathsetmacro\mI{\m*\m}
\pgfmathsetmacro\mII{\m+1}
\tabrow{\m \> \mI \> \mII}
\fi}

相關內容