Главная / Программирование /
Основы программирования на языке Пролог / Тест 8
Основы программирования на языке Пролог - тест 8
Упражнение 1:
Номер 1
При выполнении предиката sum([1,2,3],X)
переменная X
будет означена числом:
Ответ:
 (1) 0 
 (2) 1 
 (3) 2 
 (4) 3 
 (5) 6 
Номер 2
При выполнении предиката min_list([1,2,3],X)
переменная X
будет означена числом:
Ответ:
 (1) 0 
 (2) 1 
 (3) 2 
 (4) 3 
 (5) 6 
Номер 3
При выполнении предиката avg([1,2,3],X)
переменная X
будет означена числом:
Ответ:
 (1) 0 
 (2) 1 
 (3) 2 
 (4) 3 
 (5) 6 
Упражнение 2:
Номер 1
Можно ли модифицировать алгоритм сортировки выбором так, чтобы он был основан на выборе максимального элемента списка и приписывании его в конец?
Ответ:
 (1) да 
 (2) нет 
Номер 2
В алгоритме сортировкипо возрастанию перестановками предикат permutation
выполняет перестановку двух соседних элементов в случае, если:
Ответ:
 (1) первый больше второго 
 (2) первый меньше второго 
 (3) первый равен второму 
Номер 3
Алгоритм сортировки вставками основан на размещении:
Ответ:
 (1) последнего элемента списка в отсортированном начале списка 
 (2) первого элемента списка в отсортированном хвосте списка 
Упражнение 3:
Номер 1
Алгоритм пузырьковой сортировки основан на:
Ответ:
 (1) разбиении списка на два подсписка; упорядочивании каждого из них; обратной сборке из них одного списка 
 (2) разбиении исходного списка на два подсписка, в первый из которых помещаются элементы, меньшие данного, во второй – все остальные. Списки сортируются, после чего соединяются в один список 
 (3) перестановке соседних элементов, находящихся в неправильном порядке, до тех пор, пока есть такие элементы 
Номер 2
Алгоритм сортировки Хоара основан на:
Ответ:
 (1) разбиении списка на два подсписка; упорядочивании каждого из них; обратной сборке из них одного списка 
 (2) выделении минимального элемента; упорядочивании оставшихся элементов; приписывании минимального элемента в начало полученного списка 
 (3) разбиении исходного списка на два подсписка, в первый из которых помещаются элементы, меньшие данного, во второй – все остальные. Списки сортируются, после чего соединяются в один список 
Номер 3
Алгоритм сортировки фон Неймана основан на:
Ответ:
 (1) разбиении списка на два подсписка; упорядочивании каждого из них; обратной сборке из них одного списка 
 (2) выделении минимального элемента; упорядочивании оставшихся элементов; приписывании минимального элемента в начало полученного списка 
 (3) разбиении исходного списка на два подсписка, в первый из которых помещаются элементы, меньшие данного, во второй – все остальные. Списки сортируются, после чего соединяются в один список 
 (4) перестановке соседних элементов, находящихся в неправильном порядке, до тех пор, пока есть такие элементы 
Упражнение 4:
Номер 1
В результате выполнения предиката permutation([3,2,1],L)
переменная L
будет означена списком:
Ответ:
 (1) [1,2,3]
 
 (2) [1,3,2]
 
 (3) [2,1,3]
 
 (4) [2,3,1]
 
 (5) [3,2,1]
 
 (6) [3,1,2]
 
Номер 2
В результате выполнения предиката insert(2,[1],L)
переменная L
будет означена списком:
Ответ:
 (1) [1,2]
 
 (2) [2,1]
 
 (3) [1]
 
 (4) [2]
 
Номер 3
В результате выполнения предиката partition([1,2,3],2,L1,L2)
переменные L1
и L2
получат значения:
Ответ:
 (1) L1=[1,2,3], L2=[]
 
 (2) L1=[1,2], L2=[3]
 
 (3) L1=[1], L2=[2,3]
 
 (4) L1=[], L2=[1,2,3]
 
Упражнение 5:
Номер 1
В результате выполнения предиката splitting([1,2,3],L1,L2) переменные L1
и L2
получат значения:
Ответ:
 (1) L1=[1,2,3], L2=[]
 
 (2) L1=[1,2], L2=[3]
 
 (3) L1=[1,3], L2=[2]
 
 (4) L1=[2,3], L2=[1]
 
 (5) L1=[1], L2=[2,3]
 
 (6) L1=[], L2=[1,2,3]
 
Номер 2
Можно ли реализовать предикат avg
без использования предикатов summa
и length
?
Ответ:
 (1) да 
 (2) нет 
Номер 3
Можно ли реализовать предикат min_list
без использования предиката min
?
Ответ:
 (1) да 
 (2) нет