Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Shpory_-_Vsyo.doc
Скачиваний:
8
Добавлен:
16.09.2019
Размер:
1.84 Mб
Скачать

1. Определение алгоритма и способы их записей.

2. Принятые обозначения при описании алгоритмов.

3. Пошаговое описание алгоритмов.

4. Описание алгоритмов в виде блок-схем.

5. Свойства алгоритмов.

6. Критерии эффективности и сложность алгоритмов.

7. Классификация задач по степени сложности.

8. Сущность метода математической индукции (МИ).

9. Построение доказательства по методу МИ.

10. Примеры доказательств с использованием метода МИ.

11. Использование метода МИ для исследования алгоритмов.

12. Недетерминированные и детерминированные алгоритмы.

13. Разделы математической логики, представление операций булевой логики через множества и их отображение с помощью диаграмм Эйлера-Венна.

14. Объединение множеств и переход от предметной переем. х к логич.перем. Х1 и Х2 .

15. Пересечение множеств, … и обл. взаимод. двух мн. на диаг. Эйлера-Венна.

16. Таблицы истинности для дизъюнкции и конъюнкции.

17. Операции стрелка Пирса и штрих Шеффера.

18. Операции разности и импликации.

19. Операции симметрической разности и эквивалентности.

20. Формы представления булевых функций (СДНФ, СКНФ, СПНФ).

21. Двойственность в булевой логике.

22. Различия отображения логических функций в СДНФ. СКНФ и СПНФ.

23. Минимальные нормальные формы логических функций.

24. Принцип суперпозиции в булевой логике и приоритеты логических операций.

25. Классы элементарных логических функций.

26. Законы логики Буля.

27. Применение закона поглощения для нескольких переменных.

28. Аксиоматический подход к доказательству логических выражений в булевой

29. Доказательство логических выражений с помощью диаграмм Эйлера-Венна.

30. Доказательство логических выражений с использованием таблиц истинности.

31. Способы доказ.логических выражений с использованием спец. приемов.

32. Логика высказываний и операции логики высказываний.

33. Таблицы истинности операций логики высказываний.

34. Различия логики Буля и логики высказываний.

35. Метаязык логики высказываний ….

36. Аксиомы, противоречия и тавтологии в логике высказываний.

37. Конструктивный подход к доказательству логических выражений в логике высказываний.

38. Минимальная нормальная форма, мин. и трансв. покр. в логике высказываний.

39. Доказательство логических высказываний с помощью метода резолюций.

40. Логика предикатов.

41. Минимизация логических выражений методом Куайна (Квайна).

42. Минимизация логических выражений в логике Буля путем склеивания в СДНФ и СКНФ. Показать, в чем различие склеивания в этих двух формах.

43. Асимптотические представления и анализ алгоритмов.

1. Определение алгоритма и способы их записей.

Алгоритм - точное и понятное предписание исполнителю совершить последовательность действий, направленных на решение поставленной задачи.

Название «алгоритм» произошло от латинской формы имени среднеазиатского математика Аль - Хорезми - Algorithmi. В средние века алгоритм трансформировался в алгоритм и стал обозначать 4 арифметические действия «+», «-», умножить, разделить. Алгоритмизация задач является одним из самых важных этапов ее решения на ЭВМ.

С возникновением науки кибернетики в 40-х годах 20в. под алгоритмом стали понимать точное описание последовательности деятельности исполнителя любого компьютера направленных на решение поставленной задачи.

Алгоритм - одно из основных понятий информатики и математики.

Исполнитель алгоритма - это некоторая абстрактная или реальная (техническая, биологическая или биотехническая) система, способная выполнить действия, предписываемые алгоритмом.

Форма записи алгоритма:

На практике наиболее распространены следующие формы представления алгоритмов:

1. Словесный. Словами могут быть представлены достаточно просто только самые простые алгоритмы (Примеры приготовления лекарств, блюд, пдд и др.)

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

3. Математический. В виде последовательности формул, которые необходимо вычислить в процессе решения задачи. Последовательности формул иногда объединяются в блоки так же иногда используются пошаговые описания последовательности выполнения блоков, которая в общем случае может быть не просто линейной, но и иметь также разветвления в зависимости от проверок некоторых условий, а так же может иметь циклы.

4.Описания алгоритма в виде блок схем. Применяется для повышенной наглядности и лучшей обозримости алгоритмов записанных пошаговым или математическим способом. Этот способ помогает легче составить и отладить программу с помощью которой алгоритм будет реализован на ЭВМ.

2. Принятые обозначения при описании алгоритмов.

- операция замещения (подстановка, присваивание);

m n – значит m замещено текущим значением n ;

n n+1 – увеличение n на 1(n заменить на n+1);

n m r – значениям n и m присвоить r;

n m – обмен значениями переменных, фактически выполняются через некоторую промежуточную переменную (t n, n m, m t)

n = m? – операция сравнения (вместо равенства может быть любой другой знак операции отношения , >, <, , )

V[j] – j - элемент из множества V , V , V ,…, V ,…, V (от одномерного массива)

a [i,j] – Элемент на пересечении i-ой строки и j-ой столбца матрицы А (двумерного массива)

3. Пошаговое описание алгоритмов.

Каждый шаг алгоритма записывается в виде некоторого идентификатора, первая позиция которого может быть произвольной. Буква латинского: E, K, L, M, N и т.д. или буквы русского алфавита, чаще всего: Ш(шаг). 2-ой и следующие позиции отражают номера шагов в алгоритме. Ш , Ш , Ш … Е , Е , Е …

Иногда применяют цифровое обозначение: 1, 2, … и т.д. Описание каждого шага начинается с резюмирующей фразы, которая кротко обозначает суть каждого шага. Резюмирующую фразу (Р.Ф.) заключают в квадратные скобки [Резюмирующую фразу].

После Р.Ф. следует описание словами тех действий, которые должны быть выполнены на данном шаге или тех решений, которые должны быть выполнены. Здесь допустимы комментарии, которые заключают в (…). Комментарии позволяют понять цель и суть данного шага, указывают на некоторую особенность перемещений, изменяющихся на данном шаге и т.д.

Рассмотрим пример:

Задача:

Даны 2 целых положительных m и n. Найти их НОД. Рассмотрим алгоритм Евклида записанный в виде шагов:

Ш1. {Нахождение остатка} Разделим m на n и пусть остаток = r.

(у нас получится 0 ≤ r ≤ n)

Ш2.{Остаток 0?} Если r = 0,то алгоритм закончен и n - искомое число.

Ш3.{Замещение} Положим m←n; n←r и вернемся к Ш1.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]