Начала программирования Занятие 2. Машина Поста. Умный мячик. Опрос • Что такое система команд исполнителя? • Что такое понятность алгоритма? • Что такое точность алгоритма? • Из чего состоит машина Поста? • Как описывается текущее состояние машины Поста? • СКИ машины Поста. Система команд Задание Применимы ли программы к заданным состояниям машины Поста? 1. ? 3 2 9. → 4 2. → 1 6 5 5. ← 1 6. → 7 7. ? … • • • … • • • … 3. → 4 4. ? 8. ! 8 9 • • • • • • • … • • … … Задание 1) На ленте задано число. Удвоить число в два раза. Каретка располагается над первой ячейкой числа. 2) На ленте задано число. Вычислить остаток от деления заданного числа на 3. Каретка располагается над первой ячейкой числа. 3) На ленте машины Поста задано число. Составить программу, действуя по которой машина выяснит, делится ли число n на 3. Если да, то после числа через одну пустую ячейку поставить метку. Задание 4) Дано несколько чисел. Удалить те, которые стоят на четных местах. Каретка находится над первой меткой первого числа. 5) На ленте машины Поста расположено n чисел, отделенных друг от друга свободной ячейкой. Каретка находится над крайней левой меткой первого числа. Определить количество чисел. 6) Дан массив меток. Каретка располагается где-то над массивом, но не над крайними метками. Стереть все метки, кроме крайних, и поставить каретку в исходное положение. Умный мячик Исполнитель, который умеет составлять слова из букв, расположенных вдоль линейки. Состав Умный мячик состоит из: • линейки, вдоль которой прыгает «умный мячик». • букв, расставленных над делениями линейки (символ «*» обозначает невидимую букву) Умный мячик Текущее состояние «умного мячика» описывается буквами на линейке и положением «мячика» над ней. Система команд Пример Составить слово «горизонт». ! +3! -4! +7! -2! -1! +2! -3!. Пример ЭТО алг ПОКА НЕ а(-1)! КОНЕЦ -3! +1! +1! алг +7! -4! алг ПОКА НЕ ш(+1)!. -3! +1! +1! -1! +7! -4! -3! ПОКА НЕ ш (+1)!. -3! +1! +1! -1! +7! -4! -3! +9 ?ш(!, +1!). Задание Что получится после выполнения программы: 1) -3! -2! +3! -1! +4! +2! -2! -5!. 2) -3! +1! +1! +3! -4!. Задание Напишите для исполнителя программу, по которой он сможет собрать слово «агроном».