Задача 2. (5 баллов)

   Введем в символьной строке операцию минус:  "-". Эта операция
будет удалять из строки символ, который  ей предшествует. Напри-
мер,
                     крош-кодил = крокодил

   Замечание 1. Каждый знак "-"  в  строке  рассматривается  как
операция, а не как символ строки.


   Замечание  2.  Знак операции "-" может быть  самым  первым  в
строке (из строки ничего не удаляется) и самым последним (удаля-
ется самый последний символ).

   Замечание 3. Операции "-" не могут следовать в строке подряд,
то есть, записи вида "по--беда" исключаются.

   Задание.
   На поле исполнителя во второй строке записано выражение, сос-
тоящее из символов  строки  со знаками "-". Произвести указанные
операции и  получить  результат.  В начальный момент исполнитель
расположен слева от записи.

Решение куратора
-----------------

ЭТО вход                         │ Шаг по записи и проверка.
  шаг                            │ Если "-", то удаление, рекурсия и
  ЕСЛИ - ТО                      │              сжатие пружины на 2 витка.
    { удаление вход ВЛЕВО ВЛЕВО }│ Если не ПУСТО, то просто рекурсия.
  ИНАЧЕ ЕСЛИ НЕ ПУСТО ТО вход    │ Если ПУСТО, то вверх и работа пружины.
  ИНАЧЕ ВВЕРХ                    │
КОНЕЦ                            │
                                 │
ЭТО шаг                          │
  ВНИЗ                           │
  ВПРАВО                         │
  ВВЕРХ                          │
КОНЕЦ                            │
                                 │
ЭТО удаление                     │ Удаление знака "-" и предыдущего
  ВВЕРХ                          │ символа в записи.
  ВНИЗ                           │
  ВЛЕВО                          │
  ВВЕРХ                          │
  ВНИЗ ВПРАВО                    │
КОНЕЦ                            │


Задача очень похожа на первую, поэтому классификация решений по числу
проходов остается в силе и здесь.


Команда 3101
------------
.\01\01.txt
Оценка: 5
Автор решения Гуреев Денис

описание  алгоритма
- - - - - - - - - -
Решение этой задачи очень похоже на задачу 1.
КУКАРАЧА ишет "-".
Если он найдет его, то выбросит кубик c "-" и букву, стоящую перед ним
за пределы своей среды и запомнит отложенную команду ПОВТОРИ 2 ВЛЕВО.
После того, как КУКАРАЧА дойдет до пустой клетки, он сходит вверх,
вспомнит отложенные команды ПОВТОРИ 2 ВЛЕВО и тем самым сдвинет слово.

программа
- - - - -

ЭТО Вход                               
    Шаг
    ЕСЛИ - ТО { ВВЕРХ ВНИЗ }           
    Продолжение
КОНЕЦ // Вход
                                       
ЭТО Продолжение                        
    Шаг
    ЕСЛИ -
     ТО    {                           
            ВВЕРХ ВНИЗ
            ВЛЕВО ВВЕРХ ВНИЗ ВПРАВО    
            Продолжение
            ПОВТОРИ 2 ВЛЕВО            
           }                           
     ИНАЧЕ ЕСЛИ ПУСТО                  
            ТО ВВЕРХ
            ИНАЧЕ Продолжение          
КОНЕЦ //Продолжение
                                       
ЭТО Шаг
    ВНИЗ
    ВПРАВО                             
    ВВЕРХ
КОНЕЦ //Шаг                            

комментарий  куратора
- - - - - - - - - - -
В отличие от программы куратора отдельно рассмотрен случай, когда
запись начинается со знака "-". На самом деле в этом нет особой
необходимости.

Если запустить программу с процедуры "Продолжение" (выбросив процедуру
"Вход" вообще) программа по-прежнему работает правильно.

Отличие, конечно, есть, когда первый знак записи -- "-".

При запуске "Вход" знак "-" удаляется, а запись не сдвигается.
При запуске "Продолжение" - запись сдвигается на 2 клетки влево.

Что является правильным?

Так как о горизонтальных сдвигах записи в условии задачи не говорится
явно, то значит оба решения верные.


Команда 3102
------------
.\02\02.txt
Оценка: 4
Автор решения - Богатырев Гена

программа
- - - - -

ЭТО МИНУСЫ                             
 ШАГ                                   
 ПОКА ПУСТО УПЛОТНИ                    
КОНЕЦ                                  
                                       
ЭТО ШАГ //Переход к следующему кубику.
 ВВЕРХ ВПРАВО ВНИЗ
 ЕСЛИ - ТО НЕТУ // Проверяем, нет ли   
                // в начале слова -.   
  ИНАЧЕ ПРОВЕРЬ
КОНЕЦ
                                       
ЭТО НЕТУ    //Выталкивает"-" в начале. 
 ПОВТОРИ 8 ВНИЗ                        
 ПОВТОРИ 8 ВВЕРХ                       
 ШАГ
КОНЕЦ                                  

ЭТО ПРОВЕРЬ      // Проверяет следующий
                 // кубик.             
 ВВЕРХ ВПРАВО ВНИЗ                     
 ЕСЛИ ПУСТО ТО {                       
                ПОВТОРИ 2 ВНИЗ         
                ВЛЕВО ВВЕРХ            
                }                      
 ИНАЧЕ ПРОВЕРЬ_2                       
КОНЕЦ                                  

ЭТО ПРОВЕРЬ_2   // Проверяет, чтобы не
                // было -.             
 ЕСЛИ НЕ -  ТО ПРОВЕРЬ // Рекурсия     
       // внешняя по условию поиска -.
  ИНАЧЕ ВЫТОЛКНИ_2
 ВНИЗ ВЛЕВО ВВЕРХ //Отложенные команды 
КОНЕЦ                                  
                                       
ЭТО ВЫТОЛКНИ_2 //Выталкивает 2 символа 
 ПОВТОРИ 8 ВНИЗ
 ПОВТОРИ 8 ВВЕРХ                       
 ВЛЕВО
 ПОВТОРИ 8 ВНИЗ
 ПОВТОРИ 7 ВВЕРХ                       
КОНЕЦ                                  
                                       
ЭТО УПЛОТНИ         // Уплотняет слово.
 ВВЕРХ                                 
 ПОВТОРИ 2 ВПРАВО                      
 ШАГ                                   
КОНЕЦ                                  


комментарий  куратора
- - - - - - - - - - -

Многопроходной алгоритм. Дополнительно наложены длинные и опасные
выталкивания кубиков через нижнюю границу поля. Опасность в том, что
при изменении высоты поля, скажем до 11 строчек, программа работать не
будет.


Команда 3104
------------
.\04\04.txt
Оценка: 4.5

программа
- - - - -
//Главная процедура
ЭТО Задача2
 Смещение
 ЕСЛИ -
 ТО Работа
 ИНАЧЕ ЕСЛИ НЕ ПУСТО
       ТО Шаг
КОНЕЦ
//Процедура перехода в другой столбик
ЭТО Смещение
  ВНИЗ
  ВПРАВО
  ВВЕРХ
КОНЕЦ
//Проверка
ЭТО Работа
 ВВЕРХ
 ВНИЗ
 Смещение
  {
   ЕСЛИ -
   ТО Работа
   ИНАЧЕ ЕСЛИ НЕ ПУСТО
         ТО Шаг
         ИНАЧЕ ВВЕРХ
  }
 ВЛЕВО
КОНЕЦ
//удаление -
ЭТО Шаг
  Смещение
  ЕСЛИ -
  ТО Минус
  ИНАЧЕ ЕСЛИ НЕ ПУСТО
        ТО Шаг
        ИНАЧЕ ВВЕРХ
КОНЕЦ
ЭТО Минус
 ВВЕРХ
 ВНИЗ
 ВЛЕВО
 ВВЕРХ
 ВНИЗ
 ВПРАВО
 Смещение
  {
   ЕСЛИ -
   ТО Работа
   ИНАЧЕ ЕСЛИ НЕ ПУСТО
         ТО Шаг
         ИНАЧЕ ВВЕРХ
  }
 ВЛЕВО
 ВЛЕВО
КОНЕЦ


комментарий  куратора
- - - - - - - - - - -

Алгоритм -- однопроходной. Это значит он оптимальный по времени
выполнения программы (числу шагов исполнителя). Но алгоритм нельзя
назвать оптимальным по числу команд в программе, правда?

Команда 3105
------------
.\05\05.txt
Оценка: 5
Решила: Бердышева Юля

описание  алгоритма
- - - - - - - - - -
Проверяем каждый символ в  записи, если это - то выбрасываем его и
символ, стоящий перед ним, затем продолжаем проверку до тех пор, пока не 
встретим пустой символ, тогда поднимаемся вверх и сдвигаем запись влево 
на число клеток вдвое, превышающее количество вызовов процедуры   УБОРКА 
(т.е. чем встретилось в записи символов -).
Если - в первой позиции, то удаляется пустой символ перед ним, поэтому
при уплотнении записи первый символ смещается в клетку (1,1). 

программа
- - - - -
ЭТО ВЫЧИТАНИЕ
  СИМВОЛ                               
  ЕСЛИ -        ТО УБОРКА    ИНАЧЕ               
  ЕСЛИ НЕ ПУСТО ТО ВЫЧИТАНИЕ ИНАЧЕ ВВЕРХ
КОНЕЦ                                  
                                       
ЭТО СИМВОЛ       // распознаем символ
  ВНИЗ                                 
  ВПРАВО
  ВВЕРХ                                
КОНЕЦ
                                       
ЭТО УБОРКА      // убираем - и символ перед ним
  ВВЕРХ                                
  ВНИЗ                                 
  ВЛЕВО                                
  ВВЕРХ                                
  ВНИЗ                                 
  ВПРАВО                               
  ВЫЧИТАНИЕ                            
  ПОВТОРИ 2 ВЛЕВО // пружина для уплотнения записи
КОНЕЦ

комментарий  куратора
- - - - - - - - - - -

1) Прежнее серьезное замечание по форме записи переключателя.

Надо писать не так:

  ЕСЛИ -        ТО УБОРКА    ИНАЧЕ
  ЕСЛИ НЕ ПУСТО ТО ВЫЧИТАНИЕ ИНАЧЕ ВВЕРХ      

а так:

  ЕСЛИ       -        ТО УБОРКА
  ИНАЧЕ ЕСЛИ НЕ ПУСТО ТО ВЫЧИТАНИЕ
  ИНАЧЕ                  ВВЕРХ
             │           │
             │           │
          уровень      уровень
          условий      команд

2) Здесь можно было косвенную рекурсию "спрямить".

3) В целом решение отличное.

Команда 3106
------------
.\06\06.txt
.\06\ol00-2.coc
Оценка: 5

описание  алгоритма
- - - - - - - - - -
Проверяем запись. Если втретили -, то выталкиваем его и предыдущий
символ и запоминаем это событие. Когда дойдем до конца записи,
вспоминаем про Сжатие. Процедура Проверка проверяет начальные минусы.


ЭТО Проверка                           
 Шаг                                   
 ЕСЛИ НЕ ПУСТО                         
  ТО                                   
    ЕСЛИ -       //Первый оказался "-" 
      ТО                               
        {
         Убрать_Символ                 
         Сократи                       
         ВЛЕВО
        }
       ИНАЧЕ  Сократи                  
  ИНАЧЕ ВВЕРХ                          
                                       
КОНЕЦ
                                       
ЭТО Сократи
 Шаг                                   
 ЕСЛИ НЕ ПУСТО                         
  ТО                                   
    ЕСЛИ -                             
      ТО                               
        {                              
          Убрать_Символы               
          ПОВТОРИ 2 ВЛЕВО  //Сжать     
        }                              
      ИНАЧЕ Сократи                    
  ИНАЧЕ ВВЕРХ                          
КОНЕЦ
                                       
ЭТО Убрать_Символы                     
 Убрать_Символ
 ВЛЕВО
 Убрать_Символ                         
 ВПРАВО                                
 Сократи
КОНЕЦ
                                       
ЭТО Убрать_Символ
 ВВЕРХ                                 
 ВНИЗ                                  
КОНЕЦ                                  
                                       
ЭТО Шаг                                
 ВНИЗ                                  
 ВПРАВО                                
 ВВЕРХ                                 
КОНЕЦ                                  

комментарий  куратора
- - - - - - - - - - -

Однопроходной оптимальный алгоритм.

Проверку на первый минус можно было бы убрать, а косвенную рекурсию
"спрямить". Но в целом все очень хорошо и правильно.

Команда 3107
------------
.\07\07.txt
Оценка: 3
Автор решения - Кондратюк Елена

программа
- - - - -

ЭТО кошка
ВНИЗ
ВПРАВО
ВВЕРХ
ЕСЛИ - ТО м
          ИНАЧЕ (ПОКА НЕ ПУСТО кошка)
КОНЕЦ

ЭТО к
кошка
ВВЕРХ
ПОВТОРИ 2 ВЛЕВО
КОНЕЦ

ЭТО м
ВВЕРХ
ВНИЗ
ВЛЕВО
ВВЕРХ
ВНИЗ
ВПРАВО
ВНИЗ
ВПРАВО
ВВЕРХ
ЕСЛИ НЕ ПУСТО ТО кошка
                ИНАЧЕ СТОЯТЬ
КОНЕЦ

комментарий  куратора
- - - - - - - - - - -

1) В программе нет структурных отступов.

2) Не надо называть процедуры одной буквой и такими именами как
"кошка". Имя процедуры должно нести смысловую нагрузку.

3) Программа работает неверно. Опровергающий тест: "11-22-" (запись
не уплотняется)

Команда 3108
------------
Оценка: 5
.\08\08.txt
Автор решения: Катя Мороз.

описание  алгоритма
- - - - - - - - - -
Исполнитель поднимает кубики на первую строку, находя кубики с символом 
"-" выталкивает его за пределы поля, а также символ находящийся перед
символом "-".  Каждый найденный кубик с символом "-" сжимает рекурсивную 
пружину на 2 шага, которая по окончанию строки сдвигает влево исполнителя, 
образовав из нескольких строк одну.

вариант 1
- - - - -

программа
- - - - -
ЭТО Шляпа
  { ВНИЗ ВПРАВО ВВЕРХ  }               
 ЕСЛИ - ТО
  { ВВЕРХ ВНИЗ ВЛЕВО                   
    ВВЕРХ ВНИЗ ВПРАВО Шляпа            
    ПОВТОРИ 2 ВЛЕВО }
 ИНАЧЕ                                 
 ЕСЛИ НЕ ПУСТО ТО Шляпа
 ИНАЧЕ  ВВЕРХ
КОНЕЦ                                  
                                
комментарий  куратора
- - - - - - - - - - -
1) Код "ВНИЗ ВПРАВО ВВЕРХ" нагляднее было бы оформить в отдельную
процедуру.

2) Программа работает по однопроходному оптимальному алгоритму.
Лучше не бывает!

вариант 1
- - - - -

программа
- - - - -
ЭТО Поиск
  { ВНИЗ ВПРАВО ВВЕРХ }                
 ЕСЛИ - ТО Удаление                    
 ИНАЧЕ
 ЕСЛИ НЕ ПУСТО ТО Поиск                
 ИНАЧЕ  ВВЕРХ
КОНЕЦ // Поиск

ЭТО Удаление                           
 ЕСЛИ  - ТО                            
  { ВВЕРХ ВНИЗ ВЛЕВО                   
    ВВЕРХ ВНИЗ ВПРАВО Поиск }
 ИНАЧЕ Поиск                           
 ПОВТОРИ 2 ВЛЕВО                       
КОНЕЦ // Удаление
                                       
комментарий  куратора
- - - - - - - - - - -

Этот вариант принципиально не отличается от первого, но рекурсия
вместо прямой становится косвенной, что хуже.

Косвенная рекурсия есть замаскированный вариант прямой, поэтому там,
где можно избежать косвенной рекурсии, лучше это делать.

Команда 3109
------------
Оценка: 1
.\09\09.txt
Авторы решения: Журавлев Дима, Климов Сергей

описание  алгоритма
- - - - - - - - - -
Данная задача немного похожа на предыдущую. Однако здесь необходимо
вместо одного симовола убрать два (кубик с символом "-" и символ,
находящийся слева).

программа
- - - - -
ЭТО Удаления
ВВЕРХ
ВПРАВО
ВНИЗ
ЕСЛИ - ТО
{
ВПЕРЕД          // удаление первого символа
ВНИЗ
НАЗАД
ВПЕРЕД          //удаление второго сивола
ВЛЕВО
НАЗАД
ПОКА НЕ ПУСТО
{
ВНИЗ
ВЛЕВО
ВВЕРХ
}
ВВЕРХ                   //уплотнение слова
ПОВТОРИ 2 ВПРАВО
}
ИНАЧЕ Удаление
КОНЕЦ

комментарий  куратора
- - - - - - - - - - -

1) В программе нет структурных отступов -- читать ее очень
утомительно.

2) Программа неверная. Опровергающие тесты: "-11-", "11-22-".
Программа проверяет запись только до первого знака "-".

Команда 3110
------------
Оценка: 2
.\10\10.txt
.\10\1021.coc
Автор: Селезнева Аня 7класс

описание  алгоритма
- - - - - - - - - -
Идея: Проверяется символ, если - ,то предыдущий символ вырезается.
Дойдя до ПУСТО Сдвигаем влево два раза( что конечно не сработает при
других тестах.

программа
- - - - -

ЭТО МИНУС
ШАГ                                    
ЕСЛИ НЕ ПУСТО ТО                       
     {                                 
      ЕСЛИ НЕ - ТО МИНУС               
        ИНАЧЕ УБР                      
     }                                 
   ИНАЧЕ конец                         
КОНЕЦ                                  
ЭТО УБР
  ВВЕРХ
  ВНИЗ
  ВЛЕВО                                
  ВВЕРХ
  ВНИЗ                                 
  ВПРАВО                               
  МИНУС
КОНЕЦ
ЭТО ШАГ                                
  ВНИЗ                                 
  ВПРАВО                               
  ВВЕРХ                                
КОНЕЦ
ЭТО конец                              
  ВВЕРХ                                
  ВЛЕВО                                
  ВЛЕВО                                
КОНЕЦ                                  

комментарий  куратора
- - - - - - - - - - -

Программа неверная. Причина: в программе нет рекурсивной пружинки.


Команда 3111
------------
Оценка: 5
.\11\11.txt
Автор: Шамшин Максим

описание  алгоритма
- - - - - - - - - -
1.Исполнитель"Кукарача" рекурсивно вызывает процедуру по имени
"Составить_слово".

2.Если по пути встретится знак "минус", исполнитель выталкивает этот
знак и предыдущий ему символ и откладывает команду ВЛЕВО, затем он
опять рекурсивно вызывает процедуру по имени "Составить_слово".

3.Если запись кончилась - "пусто", то исполнитель поднимается на
клетку вверх и выполняет отложенную команду ВЛЕВО.

При помощи этой процедуры исполнитель проверяет каждый символ и потом
уплотняет слово.

ЭТО Составить_слово
 Шаг
 ЕСЛИ НЕ ПУСТО
  ТО
  {
   ЕСЛИ НЕ -
    ТО Составить_слово                 
    ИНАЧЕ                              
     { Удаление
       Составить_слово
       ПОВТОРИ 2 ВЛЕВО //Отложенная    
     }                 //уплотяющая    
                       //команда       
  }                                    
  ИНАЧЕ ВВЕРХ
КОНЕЦ // Составить_слово               
//-------------------------------------
// По процедуре"Шаг" исполнитель пере- 
//ходит к следующему символу.

ЭТО Шаг                                
 ВНИЗ
 ВПРАВО                                
 ВВЕРХ                                 
КОНЕЦ // Шаг                           
//-------------------------------------
// По процедуре"Удаление" исполнитель
//удаляет знак"-" и предыдущий символ.
                                       
ЭТО Удаление                           
 ВВЕРХ                                 
 ВНИЗ
 ВЛЕВО
 ВВЕРХ                                 
 ВНИЗ                                  
 ВПРАВО                                
 Шаг                                   
КОНЕЦ // Удаление                      

комментарий  куратора
- - - - - - - - - - -
1) Описание алгоритма неточное и даже кое-где неверное:

-----
знак и предыдущий ему символ и откладывает команду ВЛЕВО, затем он
-----

На самом деле откладывается не одна командв ВЛЕВО, а две.

2) Программа работает правильно.

Команда 3112
------------
.\12\12.txt
Оценка: 5

1 вариант
Автор  Громков Сергей
//   задача 1221 -------------------------------------
// Устанавливает КУКАРАЧУ в нужное
// положение (в клетку под неизвестным
// кубиком)
ЭТО КРОКОДИЛ        <─────────────────────────────┐ <─┐
  ВНИЗ ВПРАВО                                     │   │
  ПРОВЕРКА     ───────────────────────────────┐   │   │
КОНЕЦ                                         │   │   │
//-------------------------------------       │   │   │
// Определяет какой кубик находится           │   │   │
// на клетку выше КУКАРАЧИ                    │   │   │
ЭТО ПРОВЕРКА       <──────────────────────────┘   │   │
 ВВЕРХ                                            │   │
  ЕСЛИ -                                          │   │
  ТО  ШАГ1          ─────────────────────────┐    │   │
  ИНАЧЕ ШАГ2         ────────────────────────┼──┐ │   │
КОНЕЦ // Имя                                 │  │ │   │
//-------------------------------------      │  │ │   │
// Если на кубике "-", то КУКАРАЧА           │  │ │   │
// выкидывает его и кубик слева.             │  │ │   │
// В рекурсивную пружину                     │  │ │   │
// заносит  две команды ВЛЕВО для            │  │ │   │
// того, чтобы после проверки сдвинуть       │  │ │   │
// слово                                     │  │ │   │
ЭТО ШАГ1         <───────────────────────────┘  │ │   │
 ВВЕРХ ВНИЗ                                     │ │   │
 ВЛЕВО ВВЕРХ ВНИЗ  ВПРАВО КРОКОДИЛ    ──────────┼─┘   │
 ВЛЕВО ВЛЕВО                                    │     │
КОНЕЦ // Имя                                    │     │
//-------------------------------------         │     │
// Если кубик не пустой, то КУКАРАЧА            │     │
// переходит к проверке следующего              │     │
// кубика, иначе (если пустой)                  │     │
// обращается в рекурсивную пружину и           │     │
// сдвигает слово                               │     │
ЭТО ШАГ2                 <──────────────────────┘     │
 ЕСЛИ ПУСТО                                           │
  ТО    ВВЕРХ                                         │
  ИНАЧЕ КРОКОДИЛ         ─────────────────────────────┘
КОНЕЦ // Имя

2 вариант  Соавторы Александр Толкачев и Целиков Саша
***************************************************************
задача 1222

ЭТО КАН-КАН         <────────────────────┐
  ВПРАВО                                 │
  ЕСЛИ ПУСТО ТО НА_МЕСТО  ─────────┐     │
ИНАЧЕ                              │     │
  {                                │     │
  ПОКА НЕ ПУСТО ШАГ   ──────┐      │     │
  СДВИГ          ───────────┼──────┼─┐   │
  КАН-КАН        ───────────┼──────┼─┼───┘
  }                         │      │ │
КОНЕЦ                       │      │ │
ЭТО ШАГ         <───────────┘      │ │
 ВНИЗ ВПРАВО ВВЕРХ                 │ │
  ЕСЛИ - ТО ВЫБРОС  ────────┐      │ │
КОНЕЦ                       │      │ │
ЭТО ВЫБРОС         <────────┘      │ │
  ВВЕРХ ВНИЗ                       │ │
  ВЛЕВО ВВЕРХ ВНИЗ ВПРАВО          │ │
КОНЕЦ                              │ │
ЭТО СДВИГ       <──────────────────┼─┘
  ХОД1                     ──────┐ │
  ПОКА НЕ ПУСТО ХОД1             │ │
  ВНИЗ     ВЛЕВО ВЛЕВО ВЛЕВО     │ │
  ХОД2                 ──────┐   │ │
  ПОКА НЕ ПУСТО ХОД2         │   │ │
  ВВЕРХ                      │   │ │
КОНЕЦ                        │   │ │
ЭТО ХОД1          <──────────┼───┘ │
  ВВЕРХ ВПРАВО ВНИЗ          │     │
КОНЕЦ                        │     │
ЭТО ХОД2           <─────────┘     │
  ВНИЗ ВЛЕВО ВВЕРХ                 │
КОНЕЦ                              │
ЭТО НА_МЕСТО         <─────────────┘
  ВПРАВО ВПРАВО   ВВЕРХ ВЛЕВО
КОНЕЦ

комментарий  куратора
- - - - - - - - - - -

Первый вариант однопроходной -- оптимальный. Второй с "плясками" -
многопроходной. Второй вариант на этот раз совсем не удался. Программу
нельзя признать верной. Опровергающий тест: "-11-22-". Кукарача на
этом тесте кричит "Не могу".

Оценка за первый вариант -- 5.

Команда 3114
------------
Оценка: 4.5
.\14\14.txt

описание  алгоритма
- - - - - - - - - -
Программа с использованиеи рекурсии.

1. Отыскивать знаки минус: вытолкнуть найденный "-", вернуться и
вытолкнуть предшествующий знак.

2. Отложенная команда дважды сдвигает строку влево.

Текст программы:
ЭТО МИНУС
ИСКАТЬ
ЕСЛИ -
ТО УБРАТЬ
ЕСЛИ НЕ ПУСТО
ТО МИНУС
КОНЕЦ
ЭТО ИСКАТЬ
ВНИЗ
ВПРАВО
ВВЕРХ
КОНЕЦ
ЭТО УБРАТЬ
ВВЕРХ
ВНИЗ
ВЛЕВО
ВВЕРХ
ВНИЗ
ВПРАВО
МИНУС
ВВЕРХ
ПОВТОРИ 2 ВЛЕВО
ВНИЗ
КОНЕЦ

комментарий  куратора
- - - - - - - - - - -
1) В программе отсутствуют структурные отступы.

2) Нет пустых строк между процедурами.

3) Отложены команды:

ВВЕРХ
ПОВТОРИ 2 ВЛЕВО
ВНИЗ

Что для этой пружинки слишком много: Кукарача танцует вверх-вниз явно
для удовольствия, а не для дела!

