enumerar em multicols

enumerar em multicols

A imagem a seguir ilustra o que procuro:

insira a descrição da imagem aqui

Essencialmente, quero que a numeração ocorra conforme mostrado acima, mas usando o pacote multicoland . enumitemMas quando eu tento usando o seguinte código:

\documentclass{article}
\usepackage{amsmath,amssymb}
\usepackage{enumitem,multicol}
\begin{document}
\begin{enumerate}
\item Evaluate each of the following if $x$ is a non-zero real number.
    \begin{multicols}{2}
    \begin{enumerate}[itemsep=1cm]% The item sep is my choice here.
    \item $\dfrac{|x|}{x}$
    \item $\dfrac{x}{|x|}$
    \item $\dfrac{|-x|}{-x}$
    \item $|x|-|-x|$
    \end{enumerate} 
    \end{multicols}
\end{enumerate}
\end{document}

Eu recebo:

insira a descrição da imagem aqui

Essencialmente, quero que (b)esteja onde (c)está. Eu sei que isso foi feito, mas não consigo encontrá-lo.

Responder1

Aqui está uma opção usando o \newitemcomando definido. O conteúdo é definido em um \parboxformato que flui naturalmente da esquerda para a direita, fornecendo a enumeração no estilo que você procura:

insira a descrição da imagem aqui

\documentclass{article}
\usepackage{amsmath,amssymb}% http://ctan.org/pkg/{amsmath,amssymb}
\usepackage{enumitem,multicol,setspace}% http://ctan.org/pkg/{enumitem,multicol,setspace}
\newcounter{subenum}[enumi]
\renewcommand{\thesubenum}{\alph{subenum}}
\newcommand{\newitem}[1]{%
  \refstepcounter{subenum}%
  \parbox{\dimexpr.5\linewidth-.5\columnsep}{%
    \makebox[\labelwidth][r]{(\thesubenum)\hspace*{\labelsep}}%
    #1}\hfill%
}
\begin{document}
\begin{enumerate}[start=8]
  \item Evaluate each of the following if $x$ is a non-zero real number.
    \begin{multicols}{2}
      \begin{enumerate}[itemsep=1cm]% The item sep is my choice here.
        \item $\dfrac{|x|}{x}$
        \item $\dfrac{x}{|x|}$
        \item $\dfrac{|-x|}{-x}$
        \item $|x|-|-x|$
      \end{enumerate} 
    \end{multicols}
  \item Evaluate each of the following if $x$ is a non-zero real number.\par
    \setstretch{3}%
    \newitem{$\dfrac{|x|}{x}$}
    \newitem{$\dfrac{x}{|x|}$}
    \newitem{$\dfrac{|-x|}{-x}$}
    \newitem{$|x|-|-x|$}
\end{enumerate}
\end{document}

A consideração de espaçamento é fornecida porsetspacee pode ser ajustado (removendo também alguns " \topsep" espaços em branco adicionais, se necessário).


Para uma abordagem um pouco mais automatizada para alterar o número de colunas, adicione

\usepackage[nomessages]{fp}% http://ctan.org/pkg/fp

ao preâmbulo do seu documento e use

\FPeval\thecolwidth{round(1/4:4)}% Specify number of columns -> column width
\newcommand{\newitem}[1]{%
  \refstepcounter{subenum}%
  \parbox{\dimexpr\thecolwidth\linewidth-.5\columnsep}{%
    \makebox[\labelwidth][r]{(\thesubenum)\hspace*{\labelsep}}%
    #1}\hfill%
}

como sua definição para \newitem. Modifique 1/4para 1/<col nums>para aumentar o número de colunas.

Responder2

insira a descrição da imagem aqui

\documentclass{article}
\usepackage{amsmath,amssymb}
%\tracingall
\def\horizlist#1#2#3{%
  \setcounter{enumi}{0}%
  #3%
  \flushleft
  \dimen0 \linewidth
  \divide\dimen0 by #1\relax
  \advance\dimen0 -#2\relax
  \def\item{\hfil\egroup\penalty50 \hfill
  \refstepcounter{enumi}%
  \leavevmode\hbox to \dimen0 \bgroup\space(\theenumi)\space}%
  \leavevmode\bgroup\hskip 0pt plus -1fill }

\def\endhorizlist{\hfil\egroup\endflushleft}

\begin{document}
\begin{enumerate}
\item Evaluate each of the following if $x$ is a non-zero real number.
    \begin{horizlist}{2}{1cm}{\renewcommand\theenumi{\alph{enumi}}}
    \item $\dfrac{|x|}{x}$
    \item $\dfrac{x}{|x|}$
    \item $\dfrac{|-x|}{-x}$
    \item $|x|-|-x|$
    \end{horizlist}
\end{enumerate}
\end{document}

Para ver o que está acontecendo aqui, se você quiser que a numeração vá da direita para a esquerda antes de baixo, essa é a ordem normal das palavras do parágrafo, então a coisa a fazer é apenas fazer uma série de caixas de largura fixa. Se elas forem (digamos) 1/3 de largura do texto e você cria um parágrafo dessas caixas em um parágrafo alinhado à esquerda, então Tex irá naturalmente envolver o parágrafo com três caixas em uma linha e elas serão alinhadas verticalmente, pois têm a mesma largura. o restante do código apenas incrementa um contador e coloca (\the...) na frente da caixa e oculta a \makebox[0.3\textwidth]{...}sintaxe para usar a sintaxe padrão \item, facilitando a alternância entre os tipos de lista.

Em outras palavras, compare com o seguinte, que é o mesmo, exceto pelas alterações cosméticas de sintaxe.

insira a descrição da imagem aqui

\documentclass{article}

\begin{document}
\begin{flushleft}

\makebox[.3\textwidth][l]{one one}
\makebox[.3\textwidth][l]{two 2 two 2 two}
\makebox[.3\textwidth][l]{three three 3}
\makebox[.3\textwidth][l]{4 4 4 4 4 }
\makebox[.3\textwidth][l]{fifth box}
\makebox[.3\textwidth][l]{number 6}
\makebox[.3\textwidth][l]{7 7 7 7 }
\makebox[.3\textwidth][l]{eight}
\makebox[.3\textwidth][l]{nine nine}
\makebox[.3\textwidth][l]{10}

\end{flushleft}
\end{document}

Embora o resultado pareça estar em três colunas, é apenas um parágrafo digitado com o alinhamento automático, pois cada "palavra" no parágrafo é uma caixa de tamanho igual.

Responder3

Isso é fácil com oexsheetspacote e otaskspacote. Esperamos que o exemplo a seguir seja autoexplicativo:

\documentclass{article}
\usepackage[T1]{fontenc}

\usepackage{mathtools}
\DeclarePairedDelimiter\abs{\lvert}{\rvert}

\usepackage{exsheets}% loads the `tasks' package
\SetupExSheets{
  headings = runin-nr
}
\settasks{
  counter-format = tsk[a]. ,
  label-format = \sffamily\itshape\bfseries
}

\setcounter{question}{43}% only for this example

\begin{document}

\begin{question}
  Evaluate each of the following if $x$ is a non-zero real number.
  \begin{tasks}(2)
    \task $\dfrac{\abs{x}}{x}$
    \task $\dfrac{x}{\abs{x}}$
    \task $\dfrac{\abs{-x}}{-x}$
    \task $\abs{x}-\abs{-x}$
  \end{tasks}
\end{question}

\end{document}

insira a descrição da imagem aqui

Responder4

Aqui está um chato que usa a resumefuncionalidade deenumitempacote. Não é o mais eficiente, pois o código começa a parar enumeratedemais o ambiente. Mas o resultado é visualmente aceitável. Você pode introduzir todos os tipos de ajustes adicionais, já que é apenas um ambiente tabular.

\documentclass{article}
\usepackage{amsmath,amssymb}
\usepackage{enumitem}
\newcommand{\Choices}[4]{\begin{tabular}{p{0.5\textwidth} p{0.5\textwidth}} 
\begin{enumerate*}[series=lafter]
    \item #1
\end{enumerate*} &%
\begin{enumerate*}[resume=lafter]
    \item #2
\end{enumerate*} \\[2\baselineskip]
\begin{enumerate*}[resume=lafter]
    \item #3
\end{enumerate*} &%
\begin{enumerate*}[resume=lafter]
    \item #4
\end{enumerate*}
\end{tabular}}

\begin{document}
\begin{enumerate}
\item Evaluate each of the following if $x$ is a non-zero real number.

\Choices{$\dfrac{|x|}{x}$}{$\dfrac{x}{|x|}$}{$\dfrac{|-x|}{-x}$}{$|x|-|-x|$}

\item Evaluate each of the following if you can.

\Choices{This question is not answerable (is that a real word?)}
{This question does not have any correct answer}
{$\int_0^\pi{\tan\sqrt\theta d\theta}$}
{Whatever is a valid answer!}
\end{enumerate}
\end{document}

insira a descrição da imagem aqui

informação relacionada