Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Практическая работа силабус.doc
Скачиваний:
32
Добавлен:
02.05.2019
Размер:
4.2 Mб
Скачать

Практическая работа 20. Решение алгоритмических задач

Задачи:

1. Вася действует по следующему алгоритму:     Шаг 1. Пройти 10 м прямо.     Шаг 2. Повернуть направо.     Шаг 3. Повторять шаги 1-2, пока не будет пройдено 50 м.     Шаг 4. Остановиться. После выполнения шага 4 расстояние до точки, из которой Вася начал свое движение, составит … Обоснуйте свой ответ.

2. Нарисуйте блок-схему к алгоритму, представленному в задаче 1. Какую структуру имеет алгоритм? Почему?

3. Дан алгоритм:

Подсчитать S для следующих значений a и b:

№ варианта

1

2

3

4

5

6

7

8

9

10

a=

5

5

14

11

3

7

6

4

11

5

b=

8

2

1

11

7

4

6

5

12

15

Практическая работа 21. Конечные автоматы

З адание 1. Конечный автомат задан диаграммой. Определить входной алфавит , выходной алфавит , внутренний алфавит , систему команд автомата:

Задание 2. Для автомата найти минимальный :

,

,

,

,

,

,

,

,

,

,

,

,

,

,

,

,

,

,

,

,

,

Задание 3. Определить последовательность , в которую преобразуется заданная последовательность , в результате работы автомата:

    1. автомат из упражнения II, при , ;

Практическая работа 22. Разработка программ для машины Тьюринга

Вариант 1

На информационной ленте машины Тьюринга содержится массив символов +. Необходимо разработать функциональную схему машины Тьюринга, которая каждый второй символ + заменит на –. Каретка в состоянии q0 находится где-то над указанным массивом.

 

Вариант 2

Дано число n в восьмиричной системе счисления. Разработать машину Тьюринга, которая увеличивала бы заданное число n на 1.

 

Вариант 3

Дана десятичная запись натурального числа n>1. Разработать машину Тьюринга, которая уменьшала бы заданное число n на 1. При этом запись числа n–1 не должна содержать левый нуль, например, 100–1=99, а не 099. Начальное положение головки — правое.

 

Вариант 4

Дан массив из открывающихся и закрывающихся скобок. Построить машину Тьюринга, которая удаляла бы пары взаимных скобок. Например, дано : « ) ( ( ) ( ( ) », надо получить : « ) . . . ( ( . ».

 

Вариант 5

Дана строка из букв « a » и « b » . Разработать машину Тьюринга , которая переместит все буквы « a » в левую, а буквы « b » — в правую части строки. Каретка находится над крайним левым символом строки.

 

Вариант 6

Даны два целых положительных числа в десятичной системе счисления. Сконструировать машину Тьюринга, которая будет находить разность этих чисел, если известно, что первое число больше второго, а между ними стоит знак –. Каретка находится над левой крайней цифрой левого числа.

 

Вариант 7

Даны два целых положительных числа в различных системах счисления, одно — в троичной системе , другое — в десятичной. Разработать машину Тьюринга, которая будет находить сумму этих чисел в десятичной системе счисления.

 

Вариант 8

Сконструировать машину Тьюринга, которая выступит в качестве двоично-восьмиричного дешифратора.

 

Вариант 9

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

 

Вариант 10

На информационной ленте машины Тьюринга в трех секциях в произвольном порядке записаны 3 различные буквы: A, B и C. Каретка в состоянии q0 обозревает букву, расположенную справа. Необходимо составить функциональную схему машины Тьюринга, которая сумеет поменять местами крайние буквы.

 

Вариант 11

Даны два натуральных числа m и n, представленных в унарной системе счисления. Соответствующие наборы символов « | » разделены « – » , вслед за последним символом набора n стоит знак «=». Разработать машину Тьюринга, которая будет находить разность чисел m и n .При этом результат должен быть записан следующим образом : если m>n , то справа от «=» должны стоять знак «+» и набор символов « | » в количестве mn; если m=n, то справа от знака «=» должна стоять пустая клетка; если m<n, то справа от «=» должны стоять знак «–» и набор символов « | » в количестве nm.

 

Вариант 12

Даны два натуральных числа n и m, заданных в унарной системе счисления. Числа n и m представлены наборами символов « | » , разделенных « \ ». В конце набора стоит «=». Разработать машину Тьюринга, которая будет производить деление нацело двух натуральных чисел n и m и находить остаток от деления. При этом результат должен быть записан следующим образом: после «=» должен находиться набор символов « | » частного (он может быть и пустым), после чего ставится знак «(», за которым следует набор символов « | » остатка от деления n на m.

 

Вариант 13

На ленте машины Тьюринга находится число, записанное в десятичной системе счисления. Умножить это число на 2, если каретка находится над крайней левой цифрой числа.

 

Вариант 14

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

 

 

Вариант 15

На ленте машины Тьюринга находится десятичное число. Определить делится это число на 5 без остатка. Если делится, то записать справа от числа слово «да», если нет — «нет». Каретка находится где-то над числом.

 

Вариант 16

  На ленте машины Тьюринга записано число в десятичной системе счисления. Каретка находится над крайней правой цифрой. Записать цифры этого числа в обратном порядке.

 

Вариант 17

На информационной ленте машины Тьюринга находится десятичное число. Найти результат целочисленного деления этого числа на 2.

 

Вариант 18

На информационной ленте машины Тьюринга находится массив, состоящий только из символов A и B. Сжать массив, удалив из него все элементы B.

 

Вариант 19

На ленте машины Тьюринга находится массив 2*N меток. Уменьшить этот массив в 2 раза.

 

Вариант 20

Даны два натуральных числа n и m, представленные в унарной системе счисления. Между этими числами стоит знак « ? ». Выяснить отношение m и n, т.е. знак « ? » заменить на один из подходящих знаков « > », « < », « = ».

 

Вариант 21

Найти произведение двух натуральных чисел m и n, заданных в унарной системе счисления. Соответствующие наборы символов « | » разделены знаком « * », а справа от последнего символа правого члена стоит знак « = ». Поместить результат умножения этих чисел вслед за знаком « = ».

 

Вариант 22

На информационной ленте машины Тьюринга в трех секциях в произвольном порядке записаны 3 цифры 1, 2, 3. Каретка обозревает крайнюю левую цифру. Необходимо составить функциональную схему машины Тьюринга, которая расположит эти цифры в порядке возрастания.