игра брюс 2048
Главная / Программирование / Разработка приложений на языке Visual Prolog / Тест 8

Разработка приложений на языке Visual Prolog - тест 8

Упражнение 1:
Номер 1
 Поместить надпись на кнопку (Push Button) можно с помощью подцели:

Ответ:

 (1) button_ctl:setLabel(Text) 

 (2) button_ctl:setText(Text) 

 (3) button_ctl:setState(Text) 

 (4) Text = button_ctl:getText() 


Номер 2
 Найти надпись на кнопке (Push Button) можно с помощью подцели:

Ответ:

 (1) Text = button_ctl:getString() 

 (2) button_ctl:setText(Text) 

 (3) Text = button_ctl:getState() 

 (4) Text = button_ctl:getText() 


Номер 3
 Добавить восклицательный знак к надписи на кнопке (Push Button) можно с помощью подцели:

Ответ:

 (1) button_ctl:setLabel("!") 

 (2) button_ctl:setText("!") 

 (3) button_ctl:setText(string::concat(button_ctl:getText(),"!")) 

 (4) button_ctl:setText(Text, "!") 


Упражнение 2:
Номер 1
 Узнать, стоит ли флажок (Check Box), можно с помощью подцели:

Ответ:

 (1) Boolean = checkButton_ctl:getChecked() 

 (2) State = checkButton_ctl:getState() 

 (3) State = checkButton_ctl:getRadioState() 

 (4) Boolean = checkButton_ctl:getCheckedState() 


Номер 2
 Поставить флажок (Check Box) можно с помощью подцели:

Ответ:

 (1) Boolean = checkButton_ctl:getChecked() 

 (2) checkButton_ctl:setChecked(true) 

 (3) checkButton_ctl:setRadioState(radioButton::checked) 

 (4) checkButton_ctl:setCheckedState() 


Номер 3
 Убрать флажок (Check Box) можно с помощью подцели:

Ответ:

 (1) Boolean = checkButton_ctl:getChecked() 

 (2) checkButton_ctl:setRadioState(radioButton::unchecked) 

 (3) checkButton_ctl:setChecked(false) 

 (4) checkButton_ctl:setUncheckedState() 


Упражнение 3:
Номер 1
 Найдите решение для цели L = [X || X = std::cIterate(5)]:

Ответ:

 (1) L = [0, 1, 2, 3, 4, 5] 

 (2) L = [1, 2, 3, 4, 5] 

 (3) L = [0, 1, 2, 3, 4] 

 (4) L = [2, 3, 4, 5, 6] 


Номер 2
 Найдите решение для цели L = [X+1 || X = std::cIterate(3)]:

Ответ:

 (1) L = [1, 2, 3] 

 (2) L = [2, 3, 4] 

 (3) L = [0, 1, 2] 

 (4) L = [0, 1, 2, 3] 


Номер 2
 Сколько элементов содержит список L = [X-1 || X = std::cIterate(10)]?

Ответ:

 (1)

 (2) 10 

 (3) 11 

 (4)


Упражнение 4:
Номер 1
 Определение факта-переменной rbtree и предиката create имеют вид:

    facts
        rbtree : tree{integer, integer} := emptyUnique().
    clauses
        create():- 
            X = std::fromTo(1, 10), 
            rbtree := insert(rbtree, X mod 2, X).

 Сколько вершин будет содержать дерево rbtree в результате вызова create()?

Ответ:

 (1)

 (2)

 (3)

 (4) 10 


Номер 2
 Определение факта-переменной rbtree и предиката create имеют вид:

    facts
        rbtree : tree{integer, integer} := emptyUnique().
    clauses
        create():- 
            X = std::fromTo(1, 5), 
            rbtree := insert(rbtree, X mod 2, X).

 Какие пары "ключ – значение" будут содержаться в вершинах дерева rbtree в результате вызова create()?

Ответ:

 (1) "1 – 1", "2 – 0", "3 – 1", "4 – 0", "5 – 1" 

 (2) "0 – 2", "1 – 1" 

 (3) "1 – 1", "2 – 0" 

 (4) "0 – 4", "1 – 5" 


Номер 3
 Определение факта-переменной rbtree и предиката create имеют вид:

    facts
        rbtree : tree{integer, integer} := emptyUnique().
    clauses
        create():- 
            X = std::fromTo(1, 10), 
            rbtree := insert(rbtree, X, X mod 2).

 Сколько вершин будет содержать дерево rbtree в результате вызова create()?

Ответ:

 (1)

 (2)

 (3)

 (4) 10 


Упражнение 5:
Номер 1
 Определение факта-переменной rbtree и предиката create имеют вид:

    facts
        rbtree : tree{integer, integer} := emptyUnique().
    clauses
        create():- 
            X = std::fromTo(1, 10), 
            rbtree := insert(rbtree, X mod 3, X).

 Укажите значение, которое примет переменная X после вызова цели create(), X = tryLookUp(rbtree, 2):

Ответ:

 (1)

 (2)

 (3)

 (4) 10 


Номер 2
 Определение факта-переменной rbtree и предиката create имеют вид:

    facts
        rbtree : tree{integer, integer} := emptyUnique().
    clauses
        create():- 
            X = std::fromTo(1, 10), 
            rbtree := insert(rbtree, X, X mod 3).

 Укажите значение, которое примет переменная X после вызова цели create(), X = tryLookUp(rbtree, 2):

Ответ:

 (1)

 (2)

 (3)

 (4)


Номер 3
 Определение факта-переменной rbtree и предиката create имеют вид:

    facts
        rbtree : tree{integer, integer} := emptyUnique().
    clauses
        create():- 
            X = std::fromTo(1, 10), 
            rbtree := insert(rbtree, X mod 3, X div 3).

 Укажите значение, которое примет переменная X после вызова цели create(), X = tryLookUp(rbtree, 0):

Ответ:

 (1)

 (2)

 (3)

 (4)


Упражнение 6:
Номер 1
 Определение предикатов neighbor и f имеет вид:

    neighbor(I, J, I, f(J, 3)).
    neighbor(I, J, f(I, 3), J).
    neighbor(I, J, f(I, 3), f(J, 3)).

   f(X, _) = X - 1:-  X > 0.
   f(X, N) = X + 1:- X < N - 1.

 Сколько решений имеет цель neighbor(0, 1, I, J)?

Ответ:

 (1)

 (2)

 (3)

 (4)


Номер 2
 Определение предикатов neighbor и f имеет вид:

    neighbor(I, J, I, f(J, 3)).
    neighbor(I, J, f(I, 3), J).

   f(X, _) = X - 1:-  X > 0.
   f(X, N) = X + 1:- X < N - 1.

 Укажите все решения для цели neighbor(0, 2, I, J):

Ответ:

 (1) I = 0, J = 1; I = 1, J = 2 

 (2) I = 0, J = 1; I = 1, J = 2; I = 1, J = 1 

 (3) I = 0, J = 1; I = 1, J = 2; I = 0, J = 3 

 (4) I = 0, J = 1; I = 0, J = 2; I = 1, J = 2 


Номер 3
 Определение предикатов neighbor и f имеет вид:

    neighbor(I, J, f(I, 3), f(J, 3)).

   f(X, _) = X - 1:-  X > 0.
   f(X, N) = X + 1:- X < N - 1.

 Сколько решений имеет цель neighbor(1, 0, I, J)?

Ответ:

 (1)

 (2)

 (3)

 (4)


Упражнение 7:
Номер 1
 Пусть L = list::decompose([0, 1, 1, 2, -2], {(X) = X}).
 Сколько элементов содержит список L?

Ответ:

 (1)

 (2)

 (3)

 (4)


Номер 2
 Пусть L = list::decompose([0, 0, 0, 1, 1, 2, 2, 3], {(X) = X}).
 Укажите элемент, принадлежащий списку L:

Ответ:

 (1) tuple(2, 2) 

 (2) tuple(0, [0, 0, 0]) 

 (3) tuple(3, [0, 0, 0]) 

 (4) tuple(1, [1]) 


Номер 3
 Пусть L = list::decompose([1, 0, 1, 0, 1, 0, 1], {(X) = X}).
 Укажите элементы, составляющие список L:

Ответ:

 (1) tuple(4, 1), tuple(3, 0) 

 (2) tuple(4, [1]), tuple(3, [0]) 

 (3) tuple(4, [1, 1, 1, 1]), tuple(3, [0, 0, 0]) 

 (4) tuple(1, [1, 1, 1, 1]), tuple(0, [0, 0, 0]) 


Упражнение 8:
Номер 1
 Пусть L = list::decompose([-2, -1, 0, 1, 2], {(X) = X^2}).
 Сколько элементов содержит список L?

Ответ:

 (1)

 (2)

 (3)

 (4)


Номер 2
 Пусть L = list::decompose([-2, -2, -1, -1, 0, 1, 2, 3, 3], {(X) = math::abs(X)}).
 Сколько элементов содержит список L?

Ответ:

 (1)

 (2)

 (3)

 (4)


Номер 3
 Пусть L1 = list::decompose([0, 1, -1, 0, 1, -1, 0], {(X) = math::abs(X)}), L2 = list::map(L1, {(tuple(I, L)) = tuple(I, list::length(L))}).
 Укажите элементы, которые составляют список L2

Ответ:

 (1) tuple(0, 3), tuple(1, 2) , tuple(-1, 2) 

 (2) tuple(0, 3), tuple(1, 4) 

 (3) tuple(0, 3), tuple(1, 2) 

 (4) tuple(1, 2) , tuple(-1, 2) 




Главная / Программирование / Разработка приложений на языке Visual Prolog / Тест 8