
我正在嘗試cases
在equation
環境中使用環境。範例程式碼非常簡單:
\begin{equation*}
X(\omega) = \begin{cases}
1 \text{se $\omega \in A$} \\
0 \text{se $\omega \in A^c$}
\end{cases}
\end{equation*}
使用 Kile 編譯它會導致以下錯誤:
Missing $ inserted
以及一些有關結束分隔符號的其他訊息不存在。
我\usepackage{amsmath}
在文檔的開頭有。
另外我必須告訴你,我還有另一段程式碼,它是相同的,並且工作得很好:
\begin{equation*}
B_i = \begin{cases}
A_i^c \text{se $i \in I$,}
\\
A_i \text{se $i \in I \smallsetminus I'$}.
\end{cases}
\end{equation*}
另外,前幾天這篇文章給了我一些錯誤,然後我將其更改\begin{equation*} ... \end{equation*}
為$$
並且$$
它起作用了。替換$$
為方程式環境,錯誤就神奇地消失了。
我已經嘗試用那段程式碼執行此操作,但沒有任何改變。
答案1
在displaymath模式下,不能使用任何段落觸發命令,例如空白行或\par
命令。 (這不是一個好主意,但您可以在案例環境中使用它)。此外,您不需要切換到文字模式,然後再次切換到數學模式。您可以只在文本上使用文本,其餘部分保持原樣。
另一點是字元的使用&
,它是應該在cases
環境中使用的列分隔符號。如果一種情況以 開頭1250
,而另一種1
情況會導致對齊不良(嘗試不使用這些&
字元!),則這一點會很明顯。
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{equation*}
X(\omega) = \begin{cases}
1 &\text{se $\omega\in A$}\\
1250 &\text{se $\omega \in A^c$}
\end{cases}
\end{equation*}
\end{document}
也mathtools
包提供了一些很好的擴充和錯誤修復amsmath
dcases*
,所以這裡是一個在 case 聲明的第二個條目中自動切換到文字模式的環境範例:
\documentclass{article}
\usepackage{mathtools}
\begin{document}
\[
X(\omega) = \begin{dcases*}
1 & se $\omega\in A$\\
0 & se $\omega \in A^c$
\end{dcases*}
\]
\end{document}
如果您正在使用該類別standalone
(它會產生錯誤),那麼您必須將其用作
\documentclass[preview]{standalone}
答案2
我發現\begin{cases}
想要將其包裝在 $ 中以免產生錯誤。我剛剛學習 LaTeX,但是當我確保處於\end{cases}
數學環境中時,我的錯誤就消失了。