Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Могилев А.В. Информатика.doc
Скачиваний:
308
Добавлен:
02.05.2014
Размер:
9.29 Mб
Скачать

Контрольные вопросы и задания

1. В чем состоят принципиальные различие процедурных и декларативных языков программирования?

2. Каковы этапы программирования на Прологе?

3. Какие типы данных допускает Пролог?

4. В чем существо операции сопоставления?

5. Как реализуются вопросы к программе на Прологе?

6. Приведите примеры рекурсий, отличные от данных в тексте.

7. Для чего служит предикат отсечения?

8. Для чего служат списки и как они задаются?

9. Опишите на Прологе:

а) свою родословную, определите бабушек, дедушек, прабабушек, прадедушек и т.д.;

б) телефонную книгу;

в) районы вашего города, республики, области, укажите численность их на селения, местные достопримечательности;

г) европейские государства ( население, площадь и т.д.);

д) таблицу дат и событий русской истории;

е) небольшой словарь для перевода с русского языка на иностранный язык, который вы изучаете;

ж) ведомость зачета вашей группы;

з) успеваемость вашей группы (дайте определение «отличника»);

и) каталог книг в библиотеке.

10. Запишите на Прологе правила, являющиеся решением следующих заданий:

а) даны два числа а и b, получите их сумму, разность, произведение;

б) дана длина ребра куба, найдите объем куба и площадь его боковой поверхности;

в) дан радиус основания r и высота цилиндра h, найдите его объем и площадь боковой поверхности;

г) даны стороны а и b параллелограмма, а также угол между ними, найдите диагонали параллелограмма и его площадь;

11. Вычислите значения выражений:

а)2х+3у+4

б) (2х+8у+4)/2

в) у-х^2

г) x^2+xy+y^2

д) х/2+5у

е)x^2+3y^2

ж) 5(34х-у)

12. Напишите программы, выполняющие операции над списками:

а) объедините два списка, найдите МАХ и удалите его;

б) удалите из списка элемент, найдите длину оставшегося списка;

в) добавьте к списку элемент, вычислите среднее арифметическое его элементов;

г) обратите список, найдите последний и предпоследний элементы;

д) исключите из списка заданный элемент во всех вхождениях, кроме первого,

найдите длину оставшегося списка;

е) проверьте, имеются ли в списке повторяющиеся элементы, и все их удалите;

ж) удалите из списка все элементы, равные последнему, найдите длину оставшегося списка;

з) объедините два списка, найдите MINи удалите его;

и) обратите список, найдите МАХ и удалите его;

к) к списку добавьте обращенный второй список, найдите длину результата;

л) отсортируйте список, используя метод пузырька.

13. Напишите программу, решающую задачу о волке, козе и капусте.

14. Напишите программу, решающую задачу, аналогичною задаче 13, о трех туземцах, трех миссионерах и двухместной лодке.

15. Напишите программу, решающею задачу об обходе препятствия.

16. Напишите программу, определяющую положение «шах королю».

17. Напишите программу, определяющую, как шахматному коню попасть с поля

А на поле В.

18. Напишите программу, определяющую, как разлить 10 л молока по 5 л, пользуясь бидонами на 3, 7 и 10 л.

19. Напишите программу, аналитически дифференцирующую элементарную

функцию.

20. Напишите программу, играющую в «крестики и нулики» на бесконечной

плоскости.

21. Напишите программу, вычисляющую интервал между двумя датами одного

года, например 7 марта и 9 сентября.

22. Напишите программу, решающую задачу о четырех ферзях на поле размером

4х4 клетки.