這張表的真正問題是什麼?
\begin{table}[h]
\centering
\begin{tabular}{ c | c | c | c | c | c | c | c }
B & F & P & C & $B \lor F$ & $P \lor C$ & $\neg(F \land C)$ & $\neg(B \land P)$
T & T & T & T & T & T & F & F \\ % Error l.37 T & T & T & T & T & T & F & F \\ ?
T & T & T & F & T & T & T & F \\
T & T & F & T & T & T & F & T \\
T & T & F & F & T & F & T & T \\
T & F & T & T & T & T & T & F \\
T & F & T & F & T & T & T & F \\
T & F & F & T & T & T & T & T \\
T & F & F & F & T & F & T & T \\
F & T & T & T & T & T & F & T \\
F & T & T & F & T & T & T & T \\
F & T & F & T & T & T & F & T \\
F & T & F & F & T & F & T & T \\
F & F & T & T & F & T & T & T \\
F & F & T & F & F & T & T & T \\
F & F & F & T & F & T & T & T \\
F & F & F & T & F & T & T & T \\
\end{tabular}
\end{table}
答案1
除了插入缺少的\\
換行符號指令之外,您還應該考慮執行以下步驟:
充分落實@egreg 提出的建議您之前的帖子,包括使用
array
代替tabular
以及使用巨集而不是硬編碼字母來表示“True”和“False”。 (也認真思考一下為什麼您使用該字母F
既作為變數又作為「false」的標記。想出一個比「F」更好的變數名稱有這麼難嗎?去掉所有豎線,並使用畫線宏書本標籤包插入一些但間隔良好的水平線。
添加一些額外的垂直空白每第四行之後在表格主體中,因為一次四行為手頭上的表格提供了自然的分組。
\documentclass{article}
\usepackage{booktabs}
\newcommand\T{\textrm{T}} % "true"
\newcommand\F{\textrm{F}} % "false"
\begin{document}
\begin{table}[h]
\centering
$\begin{array}{ *{8}{c} }
\toprule
B & F & P & C & B \lor F & P \lor C & \neg(F \land C) & \neg(B \land P)\\
\midrule
\T & \T & \T & \T & \T & \T & \F & \F \\
\T & \T & \T & \F & \T & \T & \T & \F \\
\T & \T & \F & \T & \T & \T & \F & \T \\
\T & \T & \F & \F & \T & \F & \T & \T \\[1ex]
\T & \F & \T & \T & \T & \T & \T & \F \\
\T & \F & \T & \F & \T & \T & \T & \F \\
\T & \F & \F & \T & \T & \T & \T & \T \\
\T & \F & \F & \F & \T & \F & \T & \T \\[1ex]
\F & \T & \T & \T & \T & \T & \F & \T \\
\F & \T & \T & \F & \T & \T & \T & \T \\
\F & \T & \F & \T & \T & \T & \F & \T \\
\F & \T & \F & \F & \T & \F & \T & \T \\[1ex]
\F & \F & \T & \T & \F & \T & \T & \T \\
\F & \F & \T & \F & \F & \T & \T & \T \\
\F & \F & \F & \T & \F & \T & \T & \T \\
\F & \F & \F & \T & \F & \T & \T & \T \\
\bottomrule
\end{array}$
\end{table}
\end{document}
答案2
就我而言,發生這種情況是因為我沒有聲明正確的列數
例子:
\begin{表格}{|c|c|c|}
答案3
2017年更新
由於xintexpr 1.1 (2014/10/28)
首選使用||
and &&
,因此單一|
and&
可能會改變其當前布林值的含義or
。 and
。也可以使用關鍵字'or'
resp。'and'
(必須加引號)。更新答案以預測單一|
和中綴運算符的含義未來可能發生的變化&
。
也許您希望自動填寫表格?
更新添加了1ex
垂直跳過每四行的程式碼。
\documentclass{article}
\usepackage{booktabs}
\usepackage{xintexpr}
\newcommand\T{\textrm{T}} % "true"
\newcommand\F{\textrm{F}} % "false"
\newcommand\TF[1]{\if1#1\T\else\F\fi}
\begin{document}
\begin{table}[h]
\centering
$\begin{array}{ *{8}{c} }
\toprule
B & F & P & C & B \lor F & P \lor C & \neg(F \land C) & \neg(B \land P)\\
\midrule
\xintFor #1 in {1,0}\do {%
\xintFor #2 in {1,0}\do {%
\xintFor #3 in {1,0}\do {%
\xintFor #4 in {1,0}\do {%
\TF#1 & \TF#2 & \TF#3 & \TF#4 &
\xintifboolexpr {#1 || #2}{\T}{\F}&
\xintifboolexpr {#3 || #4}{\T}{\F} &
\xintifboolexpr {not(#2 && #4)}{\T}{\F} &
\xintifboolexpr {not(#1 && #3)}{\T}{\F} \\
}}}}
\bottomrule
\end{array}$
\end{table}
\end{document}
帶有額外的跳過:
\documentclass{article}
\usepackage{booktabs}
\usepackage{xintexpr}
\newcommand\T{\textrm{T}} % "true"
\newcommand\F{\textrm{F}} % "false"
\newcommand\TF[1]{\if1#1\T\else\F\fi}
\begin{document}
\begin{table}[h]
\centering
$\begin{array}{ *{8}{c} }
\toprule
B & F & P & C & B \lor F & P \lor C & \neg(F \land C) & \neg(B \land P)\\
\midrule
\xintFor #1 in {1,0}\do {%
\xintFor #2 in {1,0}\do {%
\xintFor #3 in {1,0}\do {%
\xintFor #4 in {1,0}\do {%
\TF#1 & \TF#2 & \TF#3 & \TF#4 &
\xintifboolexpr {#1 || #2}{\T}{\F}&
\xintifboolexpr {#3 || #4}{\T}{\F} &
\xintifboolexpr {not(#2 && #4)}{\T}{\F} &
\xintifboolexpr {#3 || #4}% every four, add 1ex space
{\xintifboolexpr {not(#1 && #3)}{\T}{\F}\\}
{\xintifboolexpr {not(#1 && #3)}{\T}{\F}\\[1ex]}
}}}}
\noalign{\addvspace{-1ex}}% compensate the last 1ex vskip
\bottomrule
\end{array}$
\end{table}
\end{document}
答案4
你必須更改|c|c|c|
為crcrcr
.我按如下方式製作了這張表。
\begin{table}
\centering
\begin{tabular}{crcrcrcrcrcrcrcr}
\hline
B & F & P & C & $B \lor F$ & $P \lor C$ & $\neg(F \land C)$ & $\neg(B \land P)$ \\
\hline
T & T & T & T & T & T & F & F \\ % Error l.37 T & T & T & T & T & T & F & F \\ ?
T & T & T & F & T & T & T & F \\
T & T & F & T & T & T & F & T \\
T & T & F & F & T & F & T & T \\
T & F & T & T & T & T & T & F \\
T & F & T & F & T & T & T & F \\
T & F & F & T & T & T & T & T \\
T & F & F & F & T & F & T & T \\
F & T & T & T & T & T & F & T \\
F & T & T & F & T & T & T & T \\
F & T & F & T & T & T & F & T \\
F & T & F & F & T & F & T & T \\
F & F & T & T & F & T & T & T \\
F & F & T & F & F & T & T & T \\
F & F & F & T & F & T & T & T \\
F & F & F & T & F & T & T & T \\
\hline
\end{tabular}
\end{table}
注意:對於頂部和底部規則,我使用了\hline
命令