\documentclass[12pt] {article}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{multirow}
\usepackage{multicol}
\usepackage{longtable}
\begin{document}
\begin{longtable}{|c|c|c|}
\hline
\pmb{Operation} & \pmb{Codes} & \pmb{Output}\\\hline
\endhead
\multirow{3}{*}{Transpose} &{\fontfamily{qcr}\selectfont A=Matrix([[1,2,3],[3,2,1],[1,1,5]])} & \multirow{3}{*}{$\left(
\begin{matrix}
1 &2 &3\\
3 &2 &1\\
1 &1 &5
\end{matrix}
\right)$}\\
& {\fontfamily{qcr}\selectfont B=A.transpose()} &\\
& {\fontfamily{qcr}\selectfont show(B)} &\\\hline
\multirow{2}{*}{Determinant} &{\fontfamily{qcr}\selectfont A=Matrix([[1,2,3],[3,2,1],[1,1,5]])} & \multirow{2}{*}{-16}\\
& {\fontfamily{qcr}\selectfont A.det()} & \\\hline
\multirow{3}{*}{Adjoint} &{\fontfamily{qcr}\selectfont A=Matrix([[1,2,3],[3,2,1],[1,1,5]])} & \multirow{3}{*}{$\left(
\begin{matrix}
1 &2 &3\\
3 &2 &1\\
1 &1 &5
\end{matrix}
\right)$}\\
& {\fontfamily{qcr}\selectfont B=A.adjugate()} &\\
&{\fontfamily{qcr}\selectfont show(B)} &\\\hline
\end{longtable}
\end{document}
내 코딩을 통해 나타납니다.
- 세 번째 열(출력 열)에서 괄호가 위쪽 및 아래쪽 수평선에 닿았습니다.
- 또한 중간 열에서는 줄이 왼쪽 정렬되지 않습니다. 이러한 문제를 어떻게 해결할 수 있습니까?
답변1
이러한 지시어가 모두 필요하지 않은 솔루션은 다음과 같습니다 \fontfamily{qcr}\selectfont
.
\documentclass[12pt]{article}
\usepackage{geometry}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{multirow}
%%%\usepackage{multicol} % not needed
\usepackage{longtable}
% new:
\usepackage{array,courier}
\begin{document}
\begin{longtable}{| l | >{\ttfamily}l | c |}
\hline
\textbf{Operation} & \multicolumn{1}{c|}{\textbf{Codes}} & \textbf{Output}\\
\hline
\endhead
% body of table:
\multirow{3}{*}{Transpose} &
A=Matrix([[1,2,3],[3,2,1],[1,1,5]]) &
\multirow{3}{*}{\small $
\begin{pmatrix}
1 &2 &3\\
3 &2 &1\\
1 &1 &5
\end{pmatrix}
$} \\
& B=A.transpose() & \\
& show(B) & \\
\hline
\multirow{2}{*}{Determinant} &
A=Matrix([[1,2,3],[3,2,1],[1,1,5]]) &
\multirow{2}{*}{$-16$}\\
& A.det() & \\
\hline
\multirow{3}{*}{Adjoint} &
A=Matrix([[1,2,3],[3,2,1],[1,1,5]]) &
\multirow{3}{*}{\small $
\begin{pmatrix}
1 &2 &3\\
3 &2 &1\\
1 &1 &5
\end{pmatrix}
$} \\
& B=A.adjugate() & \\
& show(B) & \\
\hline
\end{longtable}
\end{document}
부록OP의 후속 쿼리를 해결하기 위해: 테이블과 같은 구조에서 수평선을 그리기 위해 LaTeX에서 제공하는 두 가지 주요 매크로( \hline
및 \cline
)는 특별히 정교하지 않습니다. 특히, \hline
와 \cline
그 선 위/아래의 재료에 의해 그려진 선과 그 위/아래의 재료 사이의 간격이 매우 부적절할 때가 많습니다. 당신도 이런 일을 직접 겪어본 적이 있지 않습니까?
이제 다양한 줄 위나 아래에 수직 공백 패딩을 수동으로 삽입하여 이 문제를 해결하기 위한 "반대형 접근 방식"을 시도할 수 있습니다. 나는 여러분에게 매우 다른 일을 고려해 보라고 권하고 싶습니다.책꽂이사용자 수준 매크로( \toprule
, \midrule
, \bottomrule
, \cmidrule
및 ) 를 패키징하고 사용하는 방법을 배웁니다 \addlinespace
. 공백은 검정색 선만큼 시각적 구분자를 형성하는 데 매우 효과적일 수 있습니다. booktabs
패키지의 매크로를 사용하면 후속 댓글에서 언급하는 시각적 형식을 고려할 필요가 거의 없다는 장점이 있습니다.
아, 모든 수직적 규칙을 없애는 것도 매우 익숙해져야 할 부분입니다. 저를 믿으세요. 그 수직선은 놓치지 않을 것입니다.
\documentclass[12pt]{article}
\usepackage{geometry}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{multirow}
%%%\usepackage{multicol} % not needed
\usepackage{longtable}
% new:
\usepackage{array,courier,booktabs}
\begin{document}
\begin{longtable}{@{} l >{\ttfamily}l c @{}}
\toprule
\textbf{Operation} &
\multicolumn{1}{c}{\textbf{Codes}} &
\textbf{Output}\\
\midrule
\endhead
\bottomrule
\endlastfoot
% body of table:
\multirow{3}{*}{Transpose} &
A=Matrix([[1,2,3],[3,2,1],[1,1,5]]) &
\multirow{3}{*}{$
\begin{pmatrix}
1 &2 &3\\
3 &2 &1\\
1 &1 &5
\end{pmatrix}$} \\
& B=A.transpose() &\\
& show(B) & \\
\addlinespace
\multirow{2}{*}{Determinant} &
A=Matrix([[1,2,3],[3,2,1],[1,1,5]]) &
\multirow{2}{*}{$-16$}\\
& A.det() & \\
\addlinespace
\multirow{3}{*}{Adjoint} &
A=Matrix([[1,2,3],[3,2,1],[1,1,5]]) &
\multirow{3}{*}{$
\begin{pmatrix}
1 &2 &3\\
3 &2 &1\\
1 &1 &5
\end{pmatrix}$}\\
& B=A.adjugate() & \\
& show(B) & \\
\end{longtable}
\end{document}