Rutas
/
ABAP
ABAP
/
Ejercicios
/
Los encantamientos de Elyse
Los encantamientos de Elyse

Los encantamientos de Elyse

Fácil

Instrucciones

Como futura maga, Elyse necesita practicar algunos conceptos básicos. Tiene una pila de cartas que quiere manipular.

Para que todo sea un poco más fácil, solo usa las cartas del 1 al 10, de modo que su pila de cartas se puede representar con una tabla interna de números. La posición de una carta determinada se corresponde con la fila de la tabla. Es decir, la fila 1 se refiere a la primera carta, la fila 2 a la segunda, etc.

1. Obtener una carta de una pila

Para coger una carta, devuelve la carta que está en el índice position de la pila dada.

data(stack) = value #( ( 1 ) ( 2 ) ( 4 ) ( 1 ) ).
data(card) = get_Item( stack = stack
                       position = 3 ).   " card = 4

2. Intercambiar una carta en la pila

Haz un poco de prestidigitación e intercambia la carta que está en el índice position con la carta de sustitución proporcionada. Devuelve la pila ajustada.

data(stack) = value #( ( 1 ) ( 2 ) ( 4 ) ( 1 ) ).
data(new_Stack) = set_Item( stack = stack
                            position = 3 
                            replacement = 6 ).   
" new_Stack = 1, 2, 6, 1

3. Insertar una carta en la parte superior de la pila

Haz que aparezca una carta insertando una carta nueva en la parte superior de la pila. Devuelve la pila ajustada.

data(stack) = value #( ( 5 ) ( 9 ) ( 7 ) ( 1 ) ).
data(new_Stack) = insert_Item_at_Top( stack    = stack
                                      new_Card = 8 ).   
" new_Stack = 5, 9, 7, 1, 8

4. Quitar una carta de la pila

Haz que desaparezca una carta quitando de la pila la carta que está en position. Devuelve la pila ajustada.

data(stack) = value #( ( 3 ) ( 2 ) ( 6 ) ( 4 ) ( 8 ) ).
data(new_Stack) = remove_Item( stack    = stack
                               position = 3 ).   
" new_Stack = 3, 2, 4, 8

5. Quitar la carta superior de la pila

Haz que desaparezca una carta quitando la carta que está en la parte superior de la pila. Devuelve la pila ajustada.

data(stack) = value #( ( 3 ) ( 2 ) ( 6 ) ( 4 ) ( 8 ) ).
data(new_Stack) = remove_Item_from_Top( stack ).   
" new_Stack = 3, 2, 6, 4

6. Insertar una carta en la parte inferior de la pila

Haz que aparezca una carta insertando una carta nueva en la parte inferior de la pila. Devuelve la pila ajustada.

data(stack) = value #( ( 5 ) ( 9 ) ( 7 ) ( 1 ) ).
data(new_Stack) = insert_Item_at_Bottom( stack    = stack
                                         new_Card = 8 ).   
" new_Stack = 8, 5, 9, 7, 1

7. Quitar una carta de la parte inferior de la pila

Haz que desaparezca una carta quitando la carta que está en la parte inferior de la pila. Devuelve la pila ajustada.

data(stack) = value #( ( 8 ) ( 5 ) ( 9 ) ( 7 ) ( 1 ) ).
data(new_Stack) = remove_Item_from_Top( stack ).   
" new_Stack = 5, 9, 7, 1

8. Comprobar el tamaño de la pila

Devuelve el tamaño de la pila (el número de filas).

data(stack) = value #( ( 3 ) ( 2 ) ( 6 ) ( 4 ) ( 8 ) ).
data(size_of_Stack) = get_Size_of_Stack( stack ).   
" size_of_Stack = 5
Editar en GitHub El enlace se abre en una ventana o pestaña nueva
ABAP Exercism

¿Listo para empezar Los encantamientos de Elyse?

Regístrate en Exercism para aprender y dominar ABAP con 54 ejercicios y mentoría humana real, todo gratis.