備忘録:TeX自作カウンター:ラベルをつけて親カウンターを含め参照したい

※本をTeXで書いている。各章に例題1.1、例題1.2…などの章番号をつけ、例題を挿入したい。
※例題の中に\toiと打つと、自動的に問1、問2などの番号が振られるようにしたい。
※例題の途中で \kai と打ったところで [解] という太字が挿入されて、そこから回答を書きたい。解答も終わったら (問題1.1終) と入れたい。
※labelをつけておき、あとで参照したい。
※なので、与えられたnewtheoremを使えないので、自分で環境を作る。

コードの例

%%%%例題の環境の設定
\newcounter{questioncounter}[chapter] %例題のカウンター:親カウンターがchapter
\newcounter{toicounter}%問のカウンター
\renewcommand{\thequestioncounter}{\arabic{chapter}.\arabic{questioncounter}}
%ここがポイント。questioncounterの表示を、章番号も含めるように再定義
%再定義しないと、questioncounterの部分だけ参照してしまう
\newenvironment{question}[1]{ %例題の環境定義
\refstepcounter{questioncounter} %例題のカウンターを1つ進める
\setcounter{toicounter}{0} %問のカウンターは、0にリセット
\par\vspace{2mm}\noindent\textbf{例題\thequestioncounter}.
\label{#1} %ラベルをコマンドの引数としてつける。
}
{(例題\thequestioncounter 終)\vspace{2mm}}
%%%%問の設定
\newcommand{\toi}{
\refstepcounter{toicounter} \textbf{問\thetoicounter :}
}
%%%%解の定義
\newcommand{\kai}{%
\vspace{1mm}\par\textbf{[解]:}
\setcounter{toicounter}{0}
}

本文の例

\begin{document}

\chapter{これは}

これは練習です。

\begin{question}{q:nash}
\toi ナッシュ均衡を求めよ。
\toi 部分ゲーム完全均衡を求めよ。
\kai
\toi ナッシュ均衡はこう。
\toi 部分ゲーム完全均衡はこう。
\end{question}

それでは、例題\ref{q:nash}をよく勉強しておきなさいよ。

\end{document}

出力

こちら