13. Объясните принципы декларативного стиля программирования.
Лог. прогр. — парадигма програм-ния, основанная на автоматическом доказательстве теорем, а также раздел дискретной математики, изучающий принципы логического вывода информации на основе заданных фактов и правил вывода. Prolog - язык прогр-ия, используемый для решения задач, в которых действуют объекты и отношения между этими объектами. Программа на Prolog'е состоит из неск секций (необязательных): DOMAINS - секция описания доменов (типов). Применяется, если в программе используются нестанд. домены. PREDICATES - секция описания предикатов. Применяется, если в программе используются нестанд предикаты. CLAUSES - секция предложений. Записываются предложения: факты и правила вывода. GOAL - секция цели. Записывается внутренний запрос. Стоит различать два уровня смысла программы на Прологе: декларативный и процедурный. Декларативный касается отношений, определенных в программе. Декл-ый смысл определяет, что должно быть результатом работы программы. Процедурный смысл определяет еще и как этот результат был получен, т. е. как отношения реально обрабатываются пролог - системой. Программа на прологе состоит из предложений 3 видов: факты, правила, запросы. Все предложения строятся из термов, синтаксических единиц. Константы - поименованные конкретные объекты или отношения. Переменные - для обозначения объектов, значения которых меняются в ходе выполнения программы. Структура - это единый объект, состоящий из совокупности других объектов, наз-ых компонентами. Компоненты могут быть также структурами. Переменные могут быть свободными (у нее нет никакого значения, еще называют неконкретизированными) или связанными (есть какое-то значение и связана с опр-ым объектом). Областью действия переменной в Прологе является одно предложение. В разных предложениях может использоваться одно имя переменной для обозначения разных объектов. Исключением из правила определения области действия является анонимная переменная ("_").
Анонимная переменная применяется в случае, когда значение переменной не важно. Каждая анонимная переменная - это отдельный объект. «=» используется не как оператор приравнивания, а как оператор унифицирования.
Унификация – приведение выражений справа и слева от знака унификации к одному значению. Если в операции уни-ии участвуют 2 переменных, и каждая связана со своим значением, то выполняется их сравнение. Если одна переменная не связана, то выполняется приравнивание ей значения. А если в унификации участвуют выражения с наличием несвязанных частей, то эти части принимают значения из таких же частей другого выражения. При этом ПроЛог пытается привести оба выражения к одному значению. Примеры «приравнивание»: Goal А = 5, А = Б write(А, “,”, Б). ПроЛог выдаст на экран: 5,5. В процессе вычисления цели пролог проводит перебор вариантов, в соответствии с установленным порядком. Цели выполняются посл-но, а в случае неудачи происходит откат к предыдущей цели.
Механизм поиска с возвратом. Пролог при поиске решения задачи использует метод проб и возвращений назад, как например при поиске выхода в лабиринте; этот метод называется поиск с возвратом. Если, начиная поиск решения задачи, Пролог должен выбрать между альтернативными путями, то он ставит маркер у места ветвления (точкой отката) и выбирает первую подцель, которую и станет проверять. Если данная подцель не выполнится (тупик в лабиринте), Пролог вернется к точке отката и попробует проверить другую подцель. Основные правила поиска с возвратом: 1) Цели должны быть доказаны по порядку, слева, направо. 2) Для доказательства некоторой цели предложения просматриваются в том порядке, в каком они появляются в тексте программы. 3) Для того, чтобы доказать головную цель правила, необходимо доказать цели в теле правила. Тело правила состоит, в свою очередь из целей, которые должны быть доказаны. 4) Цель считается доказанной, если с помощью соответствующих фактов доказаны все цели, находящиеся в листьевых вершинах дерева целей.
Рекурсивная процедура - вызывающая сама себя до тех пор, пока не будет соблюдено некоторое условие, которое остановит рекурсию. Такое условие называют граничным. Рекурсия - хороший способ для решения задач, содержащих в себе подзадачу такого же типа. Пример рекурсии: найти факториал n!.
- 1. Рассмотрите процесс конструирования программ в императивных языках программирования
- Int cena;
- 5. Объектно-ориентированный анализ и объектно-ориентированное проектирование.
- 6. Объясните основные архитектурные особенности ос Windows xp/Vista
- 7. Классифицируйте операционные системы.
- 8. Объясните архитектурные особенности операционной системы Unix.
- 9. Проанализируйте структурную схему персонального компьютера, архитектурные свойства и принципы микропроцессоров.
- 10. Классифицируйте режимы работы микропроцессора. Объясните организацию оперативной памяти и систему прерываний.
- 11. Охарактеризуйте становление веб-программирования в историческом и технологическом аспекте.
- 12. Проанализируйте основные подходы к верстке веб-страниц.
- 13. Объясните принципы декларативного стиля программирования.
- 14. Проанализируйте задачи искусственного интеллекта.
- 15. Охарактеризуйте архитектуру платформы Microsoft .Net
- 16. Поясните ключевые концепции объектно-ориентированного языка программирования c#
- 17. Проанализируйте процесс создания Windows-приложений средствами Visual с#.
- 18. Проанализ. Процесс автоматизации проектирования по. Методы и ср-ва структурн. Системн. Анализа и проектир.
- 19. Проанализируйте процесс моделирования сложных систем и формальные средства представления моделей.
- 20. Охарактеризуйте назначение, принципы организации и классификацию компьютерных сетей и систем.
- 21. Объясните назначение, структуру и реализацию моделей сетевого взаимодействия открытых систем
- 22. Проанализируйте структуру, область применения и реализацию стека протоколов tcp/ip.
- 23. Объясните назначение, задачи и способы построения мультисервисных компьютерных сетей.
- 24. Объясните организацию межсетевого взаимод. И глоб. Сети Интернет.
- 25. Проанализируйте организацию корпоративных инф-ормац.-коммуникац. Инфраструктур на основе каталога Microsoft Active Directory.
- 26. Проанализируйте понятие базы данных, методы и средства создания моделей данных.
- 27. Охарактеризуйте основные аспекты реляционной модели данных. Продемонстрируйте использование методологии проектирования реляционных баз данных. Особенности реляционной модели данных.
- 28. Язык sql: назначение, возможности, типы команд.
- 29. Проанализируйте различные подходы к защите баз данных. Охарактеризуйте компьютерные и некомпьютерные средства контроля данных.
- 31. Охарактеризуйте многомерную модель данных. Продемонстрируйте метод многомерного моделирования для проектирования хранилищ данных.
- 32. Охарактеризуйте технологии olap. Объясните концепцию кубов данных и методы их построения с использованием современных систем.
- 33. Объясните понятие «многомерное выражение». Сформулируйте основные подходы к построению запросов к многомерным базам данных
- 34. Объясните основные этапы визуализации 3d геометрических моделей.
- 36. Объясните основы машинной графики.
- 37. Проанализируйте структуру системы сертификации программного обеспечения
- 38. Проанализируйте хеш-таблицу как структуру данных.
- 40.Охарактеризуйте объектную модель Java
- 41. Проанализируйте стандартные библиотеки Java Development Kit.
- 42. Объясните понятие межсетевого экрана и охарактеризуйте возможности использования.
- 43. Охарактеризуйте общие подходы к защите информации в ос
- 44. Охарактеризуйте основополагающие концепции теории информации. Дайте понятие количественной меры информации.
- 45.Объясните понятие сжатия информации. Проанализируйте классические алгоритмы сжатия.
- 46. Объясните процесс шифрования информации. Проанализируйте алгоритмы симметричного и ассиметричного шифрования.
- 47. Объясните понятие дефекта в по. Логика построения отчёта об ошибке
- 30. Объясните понятие бизнес-анализа, общие подходы к организации и созданию систем, предназначенных для хранения и анализа корпоративных данных.