LaTeX, двухколоночный список в массиве

LaTeX, двухколоночный список в массиве

Я пытаюсь отобразить коды бок о бок, используя это:

\begin{center} \begin{tabular}{c|c}  \begin{lstlisting}
while (x > 0) do
  x++; \end{lstlisting} & \begin{lstlisting}
x = 0; \end{lstlisting}  \end{tabular}\end{center}

Вот что отображается после компиляции:латексный код lstlisting

Проблема в том, что вертикальная линия таблицы заходит слишком далеко. Я пробовал играть с параметрами lstlisting belowskip и aboveskip, а также пробовал использовать мини-страницы, но ничего не работает должным образом.

Моя вторая проблема заключается в том, что при использовании кода выше второй код («x = 0;») не выравнивается с while. EDIT: вторая проблема решена с помощью мини-страниц, благодаря cfr

Знаете ли вы, как решить эту проблему?

решение1

введите описание изображения здесь

Изображение выше мы получили с помощью пакета array, ширину столбцов вы можете изменить по своему усмотрению

% \usepackage{array}  


\begin{center} 
\begin{tabular}{p{3.9cm}|p{3.9cm}} 
 \begin{lstlisting}
while (x > 0) do
  x++; \end{lstlisting} &
   \begin{lstlisting}
x = 0; \end{lstlisting}  
\end{tabular}
\end{center} 

Связанный контент