Declaración de cambio en LaTeX usando pseudocódigo de paquete

Declaración de cambio en LaTeX usando pseudocódigo de paquete

Estoy usando \usepackage{pseudocode}LaTeX para escribir pseudocódigo.

Cómo escribircambiardeclaración usando este paquete?

Escribo más del 90% de pseudocódigo usando el paquete.pseudocódigo. En la función Validar quiero escribircambiarDeclaración.

\PROCEDURE{Validate}{location1,location2}
l1 \GETS 0 \\
l2 \GETS 0 \\
validate \GETS true \\
\IF board[location1] \neq 0 \THEN
    \BEGIN 
    l1 \GETS board[location1]
    l2 \GETS board[location2]
    \IF l1 + l2 is odd and l2 \neq 0 \THEN
        validate \GETS false
    \ELSE
        \BEGIN
            %\SWITCH  here i want to write switch statement
                   %\BEGIN

            %\END
        \END
    \END

 \RETURN {validate}\\
 \ENDPROCEDURE

Puedo encontrar una declaración de cambio adicional en pseudocódigo usando otros paquetes como algorítmicox y algoritmo. Hay alguna forma de agregar una declaración de cambio usandopseudocódigo paquete?

Respuesta1

Realmente no estoy seguro de si esto es lo que buscas, pero es un primer intento:

ingrese la descripción de la imagen aquí

\documentclass{article}
\usepackage{amsmath,pseudocode}% http://ctan.org/pkg/{amsmath,pseudocode}
\newcommand{\algvar}[1]{\text{\ttfamily\upshape#1}}
\makeatletter
\newcommand{\SWITCH}{\mbox{\bfseries switch }}
\renewcommand{\CASE}{\mbox{ \bfseries case }}
\newcommand{\CASEELSE}{\mbox{ \bfseries else }}
\makeatother
\begin{document}
\begin{pseudocode}{Validate}{\algvar{location1}, \algvar{location2}}
    \PROCEDURE{Validate}{\algvar{location1}, \algvar{location2}}
    l_1 \GETS 0 \\
    l_2 \GETS 0 \\
    \algvar{validate} \GETS \TRUE \\
    \IF \algvar{board}[\algvar{location1}] \neq 0 \THEN
        \BEGIN 
        l_1 \GETS \algvar{board}[\algvar{location1}] \\
        l_2 \GETS \algvar{board}[\algvar{location2}] \\
        \IF (l_1 + l_2 \text{ is odd}) \AND (l_2 \neq 0) \THEN
            \algvar{validate} \GETS \FALSE
        \ELSE
            \BEGIN
                \SWITCH i
                    \BEGIN
                        \CASE 1 \text{ Something 1} \\
                        \CASE 2 \text{ Something 2} \\
                        \CASE 3 \text{ Something 3} \\
                        \CASE 4 \text{ Something 4} \\
                        \CASEELSE \text{ Something else}
                    \END
            \END
        \END \\
        \RETURN {\algvar{validate}} \\
    \ENDPROCEDURE
\end{pseudocode}
\end{document}

Las construcciones utilizadas porpseudocodese basa en arrays, por lo que es fácilmente modificable. Sin embargo, depende de lo que busque en términos de apariencia de un \SWITCHcomando, en términos de ubicación, alineación y justificación.

información relacionada