\documentclass[a4paper,oneside,11pt]{article}
\usepackage[left=2.5cm,right=2.5cm,top=4cm,bottom=2.7cm]{geometry}
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{graphicx}
\usepackage{array}
\usepackage{newtxtext,newtxmath}
\usepackage{lipsum}
\usepackage{longtable}
\begin{document}
\theoremstyle{definition}
\newtheorem{theorem}{Theorem}[section]
\newtheorem{example}[theorem]{Example}
\lipsum[1-4]
\begin{example}
We present the examples of t-norm and t-conorm using a table as follows.
\begingroup
\renewcommand{\arraystretch}{1.5}
\begin{longtable}{|m{2.3cm}|c|c|}
\caption{Example of t-norm and t-conorm}
\hline
\hfill \textbf{Name}\hfill \strut&\textbf{t-norm}&\textbf{t-conorm}\\
\hline
Standard intersection/ standard union&$T_m(x,y)=\min(x,y)$&$C_m(x,y)=\max(x,y)$\\
\hline
Bounded sum&$T_b(x,y)=\max(0,x+y-1)$&$C_b(x,y)=\min(1,x+y)$\\
\hline
Algebraic product/ Algebraic sum&$T_p(x,y)=xy$&$C_p(x,y)=x+y-xy$\\
\hline
Drastic&$T_D(x,y)=
\begin{cases}
y&\text{if }x=1\\
x&\text{if }y=1\\
0&\text{otherwise}
\end{cases}$
&
$C_D(x,y)=
\begin{cases}
y&\text{if }x=0\\
x&\text{if }y=0\\
1&\text{otherwise}
\end{cases}
$
\\
\hline
Nilpotent minimum/ Nilpotent maximum&$T_{nM}(x,y)=
\begin{cases}
\min(x,y)&\text{if }x+y> 1\\
0&\text{otherwise}
\end{cases}$&
$
C_{nM}(x,y)=
\begin{cases}
\max(x,y)&\text{if }x+y<1\\
1&\text{otherwise}
\end{cases}
$
\\
\hline
Hamacher product/ Einstein sum&$T_{H_0}(x,y)=
\begin{cases}
0&\text{if }x=y=0\\
\dfrac{xy}{x+y-xy}&\text{otherwise}
\end{cases}$&
$
C_{H_2}(x,y)=\dfrac{x+y}{1+xy}
$\label{tabelnorma}
\\
\hline
\end{longtable}
\endgroup
\end{example}
\end{document}
我想在表格中添加标题。我正在使用longtable
。但我不知道为什么该代码会出错。
如何修复?
答案1
\caption
内部longtable
必须终止\\
(正如我在评论中提到的那样)- 对于一些偏离主题的表格调整可能会很有趣(请参阅下面的 MWE)。
\documentclass[a4paper,oneside,11pt]{article}
\usepackage[hmargin=2.5cm,
vmargin={4cm,2.7cm}]{geometry}
\usepackage{mathtools, amsthm}
\theoremstyle{definition}
\newtheorem{theorem}{Theorem}[section]
\newtheorem{example}[theorem]{Example}
\usepackage{newtxtext,newtxmath}
\usepackage{graphicx}
\usepackage[skip=0.33\lineskip]{caption}
\usepackage{array, longtable}
\usepackage[column=O]{cellspace}
\setlength\cellspacetoplimit{8pt}
\setlength\cellspacebottomlimit{8pt}
\usepackage{lipsum}
\begin{document}
\lipsum[1-4]
\begin{example}
We present the examples of t-norm and t-conorm using a table as follows.
\begingroup
\small
\begin{longtable}{|>{\raggedright}O{m{3.5cm}}|*{2}{>{$}Oc<{$}|}}
\caption{Example of t-norm and t-conorm}
\label{tabelnorma}\\
\hline
\hfil\textbf{Name}
& \textbf{t-norm} & \textbf{t-conorm} \\
\hline
Standard intersection/ standard union
& T_m(x,y)=\min(x,y) & C_m(x,y)=\max(x,y) \\
\hline
Bounded sum
& T_b(x,y)=\max(0,x+y-1) & C_b(x,y)=\min(1,x+y) \\
\hline
Algebraic product/ Algebraic sum
& T_p(x,y)=xy & C_p(x,y)=x+y-xy \\
\hline
Drastic
& T_D(x,y) = \begin{cases*}
y & if $x=1$ \\
x & if $y=1$ \\
0 & otherwise
\end{cases*} & C_D(x,y) = \begin{cases*}
y & if $x=0$ \\
x & if $y=0$ \\
1 & otherwise
\end{cases*} \\
\hline
Nilpotent minimum/ Nilpotent maximum
& T_{nM}(x,y) = \begin{cases*}
\min(x,y) & if $x+y>1$ \\
0 & otherwise
\end{cases*} & C_{nM}(x,y) = \begin{cases*}
\max(x,y) & if $x+y<1$ \\
1 & otherwise
\end{cases*} \\
\hline
Hamacher product/ Einstein sum
& T_{H_0}(x,y) = \begin{cases*}
0 & if $x=y=0$ \\
\dfrac{xy}{x+y-xy} & otherwise
\end{cases*} & C_{H_2}(x,y)=\dfrac{x+y}{1+xy} \\
\hline
\end{longtable}
\endgroup
\end{example}
\lipsum[5]
\end{document}
(红线显示部分页面布局)
答案2
既然你提到在之前的一个问题中如果你希望表格的宽度与文本宽度一样,我建议使用xltbular
而不是longtable
。使用其X
类型列,表格的宽度会自动与指定的宽度一样宽,因此无需猜测第一列的适当宽度:
\documentclass[a4paper,oneside,11pt]{article}
\usepackage[left=2.5cm,right=2.5cm,top=4cm,bottom=2.7cm]{geometry}
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{graphicx}
\usepackage{array}
\usepackage{newtxtext,newtxmath}
\usepackage{lipsum}
\usepackage{xltabular}
\renewcommand{\tabularxcolumn}[1]{m{#1}}
\usepackage[column=0]{cellspace}
\setlength{\cellspacetoplimit}{3\tabcolsep}
\setlength{\cellspacebottomlimit}{\cellspacetoplimit}
\addparagraphcolumntypes{X}
\begin{document}
\theoremstyle{definition}
\newtheorem{theorem}{Theorem}[section]
\newtheorem{example}[theorem]{Example}
\lipsum[1-4]
\begin{example}
We present the examples of t-norm and t-conorm using a table as follows.
\begin{xltabular}{\textwidth}{|0{X}|>{$}0c<{$}|>{$}0c<{$}|}
\caption{Example of t-norm and t-conorm}\\
\hline
\hfill \textbf{Name}\hfill \strut&\textbf{t-norm}&\textbf{t-conorm}\\
\hline
Standard intersection/ standard union&T_m(x,y)=\min(x,y)&C_m(x,y)=\max(x,y)\\
\hline
Bounded sum&T_b(x,y)=\max(0,x+y-1)&C_b(x,y)=\min(1,x+y)\\
\hline
Algebraic product/ Algebraic sum&T_p(x,y)=xy&C_p(x,y)=x+y-xy\\
\hline
Drastic&T_D(x,y)=
\begin{cases}
y&\text{if }x=1\\
x&\text{if }y=1\\
0&\text{otherwise}
\end{cases}
&
C_D(x,y)=
\begin{cases}
y&\text{if }x=0\\
x&\text{if }y=0\\
1&\text{otherwise}
\end{cases}
\\
\hline
Nilpotent minimum/ Nilpotent maximum&T_{nM}(x,y)=
\begin{cases}
\min(x,y)&\text{if }x+y> 1\\
0&\text{otherwise}
\end{cases}&
C_{nM}(x,y)=
\begin{cases}
\max(x,y)&\text{if }x+y<1\\
1&\text{otherwise}
\end{cases}
\\
\hline
Hamacher product/ Einstein sum&T_{H_0}(x,y)=
\begin{cases}
0&\text{if }x=y=0\\
\dfrac{xy}{x+y-xy}&\text{otherwise}
\end{cases}&
C_{H_2}(x,y)=\dfrac{x+y}{1+xy}
% \label{tabelnorma}
\\
\hline
\end{xltabular}
\end{example}
\end{document}