Треки
/
ABAP
ABAP
/
Вправи
/
Чари Еліз
Чари Еліз

Чари Еліз

Легка

Вказівки

Як майбутня чарівниця, Еліз хоче потренувати базові прийоми. У неї є стос карт, з яким вона хоче працювати.

Щоб трохи спростити собі роботу, вона використовує лише карти від 1 до 10, тож її стос карт можна подати як внутрішню таблицю чисел. Позиція певної карти відповідає рядку таблиці. Це означає, що рядок 1 указує на першу карту, рядок 2 на другу тощо.

1. Витягти карту зі стосу

Щоб вибрати карту, поверніть карту за індексом position із заданого стосу.

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

2. Обміняти карту в стосі

Застосуйте трохи спритності рук і обміняйте карту за індексом position на надану карту-заміну. Поверніть змінений стос.

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. Вставити карту вгору стосу

Змусьте карту зʼявитися, вставивши нову карту вгору стосу. Поверніть змінений стос.

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. Видалити карту зі стосу

Змусьте карту зникнути, видаливши карту з позиції position зі стосу. Поверніть змінений стос.

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

5. Видалити верхню карту зі стосу

Змусьте карту зникнути, видаливши карту вгорі стосу. Поверніть змінений стос.

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

6. Вставити карту вниз стосу

Змусьте карту зʼявитися, вставивши нову карту вниз стосу. Поверніть змінений стос.

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. Видалити карту знизу стосу

Змусьте карту зникнути, видаливши карту внизу стосу. Поверніть змінений стос.

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

8. Перевірити розмір стосу

Поверніть розмір стосу (кількість рядків).

data(stack) = value #( ( 3 ) ( 2 ) ( 6 ) ( 4 ) ( 8 ) ).
data(size_of_Stack) = get_Size_of_Stack( stack ).   
" size_of_Stack = 5
Редагувати через GitHub Посилання відкривається в новому вікні або вкладці
ABAP Exercism

Час розпочати Чари Еліз?

Зареєструйтеся на Exercism, щоб вивчати й опановувати ABAP, а також 54 вправи та справжнє наставництво від людей, і все це безкоштовно.