- •7.050102 “Программное обеспечение автоматизированных систем”,
- •7.080407 “Компьютерный эколого-экономический мониторинг ”)
- •Донецк - 2009
- •Рекурсивные функции
- •Теоретическая справка
- •Примитивно-рекурсивные функции
- •Задание на лабораторную работу
- •Контрольные вопросы
- •Машины тьюринга
- •Теоретическая справка Символьные конструкции
- •Определение машины Тьюринга (мт)
- •Задание на лабораторную работу
- •Контрольные вопросы
- •Композиция машин тьюринга
- •Теоретическая справка
- •1. Последовательная композиция машин Тьюринга
- •2. Параллельная композиция машин Тьюринга
- •3. Разветвление или условный переход в композиции машин Тьюринга
- •Задание на лабораторную работу
- •Контрольные вопросы
- •Нормальные алгоритмы маркова
- •Теоретическая справка
- •Функционирование нам
- •Задание на лабораторную работу
- •Контрольные вопросы
- •Перечень рекомендованной литературы
- •7.050102 “Программное обеспечение автоматизированных систем”,
- •7.080407 “Компьютерный эколого-экономический мониторинг ”
Задание на лабораторную работу
1. Разработать алгоритм вычисления в виде рекурсивной функции.
2. Проверить модель алгоритма на множестве тестовых примеров.
3. Определить к какому классу рекурсивных функций принадлежит : примитивно-рекурсивна, частично-рекурсивна или общерекурсивна.
Варианты заданий
-
Сумма всех четных делителей числа .
-
Количество всех нечетных делителей числа .
-
Количество нулей в двоичной записи .
-
Сумма цифр в двоичной записи .
-
Количество взаимно-простых с чисел,
-
Максимальная цифра в 8-ричной записи числа .
-
Минимальная цифра в 8-ричной записи числа .
-
Количество четных цифр в 8-ричной записи числа .
-
Количество нечетных цифр в 8-ричной записи числа .
-
Сумма простых делителей числа .
-
Количество простых делителей числа .
-
Количество простых чисел,
-
Количество чисел, являющихся полными квадратами,
-
Сумма чисел, являющихся степенью двойки,
-
Максимальная цифра в 16-ричной записи числа .
-
Минимальная цифра в 16-ричной записи числа .
-
Ближайшее к простое число.
-
Произведение делителей числа .
-
Произведение простых делителей числа .
-
Произведение взаимно-простых с чисел,
-
Наименьшее общее кратное двух чисел, ,
-
Наибольший общий делитель двух чисел,
-
Функция, отличная от нуля в конечном числе точек.
-
Номер наибольшего простого делителя числа
-
Функция, вычисляющая целую часть квадратного корня от аргумента, .
Контрольные вопросы
-
Что такое вычислимая, арифметическая, частичная или всюду определенная функция?
-
Определить операторы суперпозиции и примитивной рекурсии.
-
Перечислить простейшие функции теории рекурсивных функций.
-
Что такое примитивно-рекурсивные функции?
-
Показать примитивную рекурсивность известных арифметических функций.
-
Показать примитивную рекурсивность арифметизованных логических функции. Примитивная рекурсивность отношений и предикатов.
-
Определить оператор минимизации, в каких случаях он работает бесконечно?
-
Что такое частично-рекурсивная функция и общерекурсивная?
-
Сформулировать тезис Черча.
-
Определите соотношение между примитивно, частично и общерекурсивными функциями.
Лабораторная работа № 2
Машины тьюринга
Цель работы: получить практические навыки в записи алгоритмов с использованием машин Тьюринга.
Теоретическая справка Символьные конструкции
Алфавитом будем называть любое конечное множество попарно различных знаков, называемых буквами (символами) этого алфавита. Алфавит будем обозначать заглавными буквами, например:
Символом будем обозначать пустой символ.
Словом в данном алфавите называется любая конечная (в том числе и пустая) последовательность букв этого алфавита. Слова будем обозначать малыми греческими буквами.
Например: = алгоритм – слово в алфавите А; = 1010100 – слово в алфавите В; – слово в алфавите С.
Пустое слово будем обозначать .
Длина слова (обозначается ) – это количество букв в слове.
Определим некоторые отношения и операции над словами.
Равенство слов в алфавите А определяется индуктивно:
а) пустые слова равны
б) если слово равно слову , то b =b , где b – буква в алфавите А.
Если слово является частью слова , то говорят, что имеет место вхождение слова в слово (слово называется подсловом слова ). Это можно записать следующим образом: , где – слова в алфавите А.
Слово называется началом слова , если ; концом слова , если . Слово длины n, составленное из буквы а, повторенной n раз, будем обозначать , например xyxxxyyyy = .
Операция (и результат) приписывания слов и друг к другу называется конкатенацией (обозначается ||). Например, если .