TeX/loop

Last-modified: 2011-06-02 (木) 11:13:05

\@for

流れ

\def\somecs#1,#2,#3\@nil{

#1

\edef\@tempa{#2}

\ifx\@tempa\empty

\else

\somecs#2,#3,\@nil

\fi

}

のようなものを作って

\somecs A,B,C,D,,\@nil

等の処理を考える.

\somecs A,B,C,D,,\@nil

#1 = "A", #2 = "B", #3 = "C,D,"

\somecs B,C,D,,,\@nil

#1 = "B", #2 = "C", #3 = "D,,,"

\somecs C,D,,,,,,\@nil

#1 = "C", #2 = "D", #3 = ",,,,,"

\somecs D,,,,,,,,,\@nil

#1 = "D", #2 = "", #3 = ",,,,,,,"

\somecs A,B,C,,\@nil

#1 = "A", #2 = "B", #3 = "C,,"

\somecs B,C,,,,,\@nil

#1 = "B", #2 = "C", #3 = ",,,,"

\somecs C,,,,,,,,\@nil

#1 = "C", #2 = "", #3 = ",,,,,,"

\somecs A,B,,\@nil

#1 = "A", #2 = "B", #3 = ","

\somecs B,,,,,\@nil

#1 = "B", #2 = "", #3 = ",,,"

\somecs A,,\@nil

#1 = "A", #2 = "", #3 = ""