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}

관련 정보