¿Cuál es el problema real con esta tabla?

\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} 

Comentarios

  • Te ‘ te falta un \\ al final de la primera fila.
  • @dcmst: Consulte Formateo de Sand-Box y este comentario .
  • Veo que ‘ no estás siguiendo mis sugerencias sobre el uso de array, \True y el \False definido de manera similar. Por cierto, ‘ estás usando «F» aparentemente en dos significados muy diferentes, lo que puede ser completamente confuso. En la primera línea tiene «B» y las otras variables aparecen con diferentes formas, lo que aumenta la confusión.

Respuesta

Además de insertar la \\ instrucción de salto de línea que falta, debe considerar realizar los siguientes pasos:

  • Implementar completamente las sugerencias @egreg realizado con respecto a tu publicación anterior , incluido el uso de array en lugar de tabular y el uso de macros en lugar de letras codificadas para» Verdadero «y» Falso «. (Piense también en por qué está usando la letra F como variable y como símbolo para «falso». ¿Es tan difícil con un nombre de variable mejor que «F»?)

  • Deshazte de todas las barras verticales y usa las macros de dibujo de líneas de booktabs para insertar algunas líneas horizontales bien espaciadas.

  • Agregue un poco de espacio en blanco vertical adicional después de cada cuarta fila en el cuerpo de la tabla, ya que cuatro filas a la vez proporcionan una agrupación natural para la tabla en cuestión.

ingrese descripción de la imagen aquí

\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} 

Respuesta

En mi caso sucedió porque no declaré el número correcto de columnas

ejemplo:

\ begin {tabular} {| c | c | c |}

Comentarios

  • Esta respuesta me ahorró mucho tiempo buscando problemas semánticos con longtabu, tabu, etc. Después de todo, fue solo un simple error.

Responder

Actualización de 2017

Desde xintexpr 1.1 (2014/10/28) se prefiere utilizar || y &&, el único | y & pueden cambiar el significado de sus actuales como booleanos or resp. and. También se pueden utilizar las palabras clave "or" resp. "and" (las comillas son obligatorias). Respuesta actualizada para anticipar posibles cambios futuros en el significado de los operadores infijos | y & únicos.


Quizás ¿Desea que la tabla se complete automáticamente?

La actualización agrega código para 1ex salto vertical cada cuatro filas.

\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} 

tabla de verdad

Con saltos adicionales:

\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} 

tabla de verdad con espacios verticales adicionales

Respuesta

Me pasó esto porque copié y pegué algunas cosas de otra tabla en mi documento, estaba usando la siguiente sintaxis para hacer una línea horizontal debajo de solo una parte de la tabla:

\\\cline{2-3} 

I copia pegada

\\\cline{2-5} 

de una tabla con más columnas, y dio este error hasta que corrigí

Comentarios

  • Esta es probablemente una solución a un problema diferente que resulta en el mismo error. Técnicamente, no ‘ responde esta pregunta, ya que el OP no ‘ t usuario \cline .

Responder

Tienes que cambiar |c|c|c| a crcrcr. Hice esta tabla de la siguiente manera.

\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} 

Nota: Para la regla superior e inferior, utilicé el comando \hline

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *