文中の数式に通し番号をつけて\labelもセットするには?

文中の数式に通し番号をつけて\labelもセットするには?

- DION Emily の投稿
返信数: 5

宜しくお願い致します。

下記のように文中の数式に通し番号を振って,\labelをセットしておき,後ページで\eqrefなどを使ってその通し番号を呼び出したいのですが,これはどうすれば可能でしょうか?

次の数式y=x3+ax2+bx+c+1・・・(2.10.4)は非常に重要で,

かくかくしかじか

かくかくしかじか

かくかくしかじか

前ページで紹介した式(2.10.4)を使って,次の問題を考えてみよう。

かくかくしかじか

DION Emily への返信

Re: 文中の数式に通し番号をつけて\labelもセットするには?

- tat tsan の投稿
amsmathを使います。

\documentclass{jarticle}
\usepackage{amsmath}
\makeatletter
\def\EqNumText{\refstepcounter{equation}\cdots\tagform@\theequation}%
\makeatother
\begin{document}
$E=mc^2\ \EqNumText\label{eq:E=mc2}$ には、\eqref{eq:E=mc2}という番号が付いている。
\end{document}
tat tsan への返信

Re: 文中の数式に通し番号をつけて\labelもセットするには?

- DION Emily の投稿

いつも大変お世話になっております。

\begin{eqnarray*}

E=mc^2\ \EqNumText\label{test}

\end{eqnarray*}

\eqref{test}

という具合にeqnarray*環境内で使用した場合,通し番号は振られますが,

\eqref{test}

で呼び出しが出来ません。 何度コンパイルしてもの(??)としか出力されません。

どのようにして解決できますでしょうか?

DION Emily への返信

Re: 文中の数式に通し番号をつけて\labelもセットするには?

- tat tsan の投稿
もともと、このトピックの質問は「文中の数式」に数式番号をつける方法だったはずです。しかし eqnarray* は「別行立ての数式」環境であり、それに番号をつけたいなら「*」のつかないeqnarray環境を使えば済みます。従って \EqNumText を用いる必要は、そもそもありません。

あと「eqnarray」環境は2行以上ある数式の、各行の特定の位置を揃えるための環境です。1行でよいのなら「equation」環境です。

(番号つき)
\begin{equation}
E=mc^2
\end{equation}

(番号なし)
\[
E=mc^2
\]


amsmathを読み込んでいれば、番号無しは次のでもOK。
(番号なし)
\begin{equation*}
E=mc^2
\end{equation*}

eqnarray(*)は次のように縦に位置を揃えるときに使う。
(番号あり)
\begin{eqnarray}
E&=&mcc \\
EE&=&mmccccc\\
EEEE&=&mmmmccccccccc
\end{eqnarray}

(番号なし)
\begin{eqnarray*}
E&=&mcc \\
EE&=&mmccccc\\
EEEE&=&mmmmccccccccc
\end{eqnarray*}

揃える位置は「&と&で狭む」ことで指示し、amsmathのalignとは書き方が違う。

しかし…
これらの件については御存知だと思っておりました。これくらいの話になりますと、疑問点を1つ1つ掲示板で質問するのは非効率です。まずは、まとまった書物をお読みになることをお勧めします。数式の書き方だけなら、1章か2章くらいの分量です。