\begin{document}
\textbf{2b. }
\definecolor{Cyan}{rgb}{0.88,1,1}
\begin{table}
\begin{tabular}{|c|c|c|c|c|c|c|c|c|c|c|c|c|}
\hline
p & q & r & $\neg p$ & $\neg q$ & $\neg r$ & $p \vee r$ & $p \vee q$ & $\neg q \vee \neg r$ & $(p \vee r) \wedge (p \vee q) \wedge (\neg q \vee \neg r)$ \\
\hline
\rowcolor{Cyan}
T & T & T & F & F & F & T & T & F & F\\
T & T & F & F & F & T & T & T & T & T\\
\rowcolor{Cyan}
T & F & T & F & T & F & T & T & T & T\\
T & F & F & F & T & T & T & T & T & T\\
\rowcolor{Cyan}
F & T & T & T & F & F & T & T & F & F\\
F & T & F & T & F & T & F & T & T & F\\
\rowcolor{Cyan}
F & F & T & T & T & F & T & F & T & F\\
F & F & F & T & T & T & F & F & T & F\\
\hline
\end{tabular}
\end{table}
\begin{table}
\begin{tabular}{|c|c|c|}
\hline
$ (q \wedge r)$ & $\neg (q \wedge r)$ & $p \wedge \neg (q \wedge r)$\\
\rowcolor{Cyan}
T & F & F\\
F & T & T\\
\rowcolor{Cyan}
F & T &T\\
F & T &T\\
\rowcolor{Cyan}
T & F &F\\
F & T &F\\
\rowcolor{Cyan}
F & T & F\\
F & T & F\\
\hline
\end{tabular}
\end{table}
\end{document}
答案1
如果您不希望两个tabular
环境独立排版且可能相距甚远,请不要将它们放在单独的环境中。相反,只需在两个环境之间table
插入一条指令(或任何其他适合您需要的距离) 。\vspace{1cm}
tabular
顺便问一下,第一个tabular
环境不是只包含 10 列,而不是代码中指示的 13 列吗?现在,通常情况下,指示超过所需数量的列不会立即生成错误或警告消息 - 甚至不一定会立即弄乱表格材料的外观。不过,我仍然会避免夸大列数,因为提供不正确的列数有时会导致令人费解的错误,而这些错误很难追踪。
\documentclass{article} % or some other suitable document class
\usepackage[table]{xcolor}
\definecolor{Cyan}{rgb}{0.88,1,1}
\newcommand\rcC{\rowcolor{Cyan}} % handy shortcut macro
\begin{document}
\begin{table}[htbp]
\setlength\tabcolsep{4.5pt} % <-- new (default value: 6pt)
\centering % <-- new
\begin{tabular}{ | *{10}{c|} } % Not 13, but 10 columns, right?
\hline
$p$ & $q$ & $r$ & $\neg p$ & $\neg q$ & $\neg r$ &
$p \vee r$ & $p \vee q$ & $\neg q \vee \neg r$ &
\medmuskip=3mu % <-- new (default value: 4mu)
$(p \vee r) \wedge (p \vee q) \wedge (\neg q \vee \neg r)$ \\
\hline
\rcC
T & T & T & F & F & F & T & T & F & F\\
T & T & F & F & F & T & T & T & T & T\\
\rcC
T & F & T & F & T & F & T & T & T & T\\
T & F & F & F & T & T & T & T & T & T\\
\rcC
F & T & T & T & F & F & T & T & F & F\\
F & T & F & T & F & T & F & T & T & F\\
\rcC
F & F & T & T & T & F & T & F & T & F\\
F & F & F & T & T & T & F & F & T & F\\
\hline
\end{tabular}
%\end{table}
%\begin{table}
\vspace{5mm} % or whatever length value suits your needs
\begin{tabular}{|c|c|c|}
\hline
$ (q \wedge r)$ & $\neg (q \wedge r)$ & $p \wedge \neg (q \wedge r)$\\
\hline
\rcC
T & F & F\\
F & T & T\\
\rcC
F & T &T\\
F & T &T\\
\rcC
T & F &F\\
F & T &F\\
\rcC
F & T & F\\
F & T & F\\
\hline
\end{tabular}
\end{table}
\end{document}
答案2
作为对 @Mico 的精彩回答的补充 (+1)。在您的特定情况下,当所有列都是相同类型 ( c
) 时,使用 table 包tabularray
您无需关心列数。它们将自动适应表格主体的内容。
除此之外,您还可以为行着色(再次自动),row{even} = {bg=Cyan}
并将第一行表格置于数学模式:
\documentclass{article}
\usepackage{xcolor}
\definecolor{Cyan}{rgb}{0.88,1,1}
\usepackage{tabularray}
\begin{document}
\begin{table}[htb]
\centering % <-- new
\begin{tblr}{hline{1,2,Z}={solid},vlines,
cells = {c},
colsep = {4.4pt},
row{1} = {mode=math},
row{even} = {bg=Cyan}
}
p & q & r & \neg p & \neg q & \neg r
& p \vee r & p \vee q & \neg q \vee \neg r
& (p \vee r) \wedge (p \vee q) \wedge (\neg q \vee \neg r) \\
T & T & T & F & F & F & T & T & F & F\\
T & T & F & F & F & T & T & T & T & T\\
T & F & T & F & T & F & T & T & T & T\\
T & F & F & F & T & T & T & T & T & T\\
F & T & T & T & F & F & T & T & F & F\\
F & T & F & T & F & T & F & T & T & F\\
F & F & T & T & T & F & T & F & T & F\\
F & F & F & T & T & T & F & F & T & F\\
\end{tblr}
\bigskip
\begin{tblr}{hline{1,2,Z}={solid},vlines,
cells = {c},
colsep = {4.4pt},
row{1} = {mode=math},
row{even} = {bg=Cyan}
}
(q \wedge r)
& \neg (q \wedge r)
& p \wedge \neg (q \wedge r)\\
T & F & F\\
F & T & T\\
F & T & T\\
F & T & T\\
T & F & F\\
F & T & F\\
F & T & F\\
F & T & F\\
\end{tblr}
\end{table}
\end{document}
您也可以在“经典”表格中实现这种“斑马”着色表格的方式。您只需在表格前插入:
\rowcolors{2}{white}{Cyan}
然后删除\rowcolor{Cyan}
表体中的所有命令。