Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

тести / all

.doc
Скачиваний:
15
Добавлен:
14.02.2016
Размер:
59.9 Кб
Скачать

// Початок питання: ПитЗВибором

Середовище в якому розробляються програми на мові Visual Prolog називається: {

~%-100%CDE;

~%100%IDE;

~%-100%UDE;

}

// Початок питання: ПитЗВибором

Система вікон і діалогів, яку ви створюєте для спілкування з потенційним користувачем вашої програми, називається {

~%100%GUI;

~%-100%FUI;

~%-100%SUI;

~%-100%WUI;

}

// Початок питання: ПитЗВибором

Для створення нового проекту використовують команду {

~%100%Project/New

~%-100%Project/Open

~%-100%File/New

~%-100%File/Open

}

// Початок питання: ПитЗВибором

Для того щоб відкомпілювати програму, виберіть команду <i> {

~%</i>-100%Debug/Ran

~%100%Build/Build

~%-100%Build/Compile

~%-100%Debug/ Compile

}

// Початок питання: ПитЗВибором

Для запуску програми виберіть команду {

~%-100%Debug/ Compile

~%-100%Debug/ RUN

~%100%Build/Execute

~%-100%Debug/ Execute

}

// Початок питання: ПитЗВибором

Поле "UI Strategi" із закладки General що заповнюється при створенні нового проекту може мати такі значення: {

~%50%Console

~%-100%General

~%50%Object-oriented GUI

~%-100%Unregistered

}

// Початок питання: ПитЗВибором

Поле "Target Type" із закладки General що заповнюється при створенні нового проекту може мати такі значення {

~%50%EXE

~%50%DLL

~%-100%OBJ

~%-100%LIB

}

// Початок питання: ПитЗВибором

Вікно, <img src\='/file.php/225/testi_prolog_images/image001.gif' alt\=''/> подане на малюнку, можна викликати через команду {

~%100%File/New in NEW Paskage

~%-100%File/Open in NEW Paskage

~%-100%File/Create in NEW Paskage

~%-100%New/Form in NEW Paskage

}

// Початок питання: ПитЗВибором

IDE покаже вам прототип вікна у тому випадку, якщо ви - {

~%100%Створюєте форму через діалогове вікно Create Project Item;

~%-100%Створюєте форму через метод CreateWindow;

~%-100%Створюєте форму з використанням предикатів Create;

}

// Початок питання: ПитЗВибором

Під час створення нового проекту Пролог автоматично формує дерево проекту і створює в ньому папку - {

~%-100%TaskWindowNew

~%100%TaskWindow

~%-100%DrawControl

~%-100%Task_Menu

}

// Початок питання: ПитЗВибором

Зміст верхнього меню вашого проекту можна змінити використавши діалогове вікно TaskMenu. Для його активації використовують команду: {

~%100%TaskWindow/TaskMenu.mnu

~%-100%TaskWindowNew

~%-100%DrawControl

~%-100%File/Create

~%-100%Project/Open

}

// Початок питання: ПитЗВибором

Програма мовою Пролог зазвичай описує якусь дійсність. Об'єкти (елементи) описуваного світу представляються за допомогою термів. Терм інтуїтивно означає об'єкт. Існує 4 види термів: {

~%25%Атоми

~%-100%Фрази

~%25%Числа

~%-100%Вислови

~%25%Змінні

~%-100%Константи

~%25%Cкладні терми

}

// Початок питання: ПитЗВибором

Кома між фактами в предикаті означає операцію - {

~%-100%No

~%100%I

~%-100%Але

~%-100%Yes

}

// Початок питання: ПитКороткаВідп

Логічна функція від одного або декількох аргументів, тобто функція, що діє в множині з двох значень: істина та неправда - називається - {

=Предикат

}

// Початок питання: ПитЗВибором

Для того, щоб створити можливість відкривати нове вікно за допомогою команди верхнього меню необхідно змінити clauses onFileNew(_Source, _MenuTag) на ... {

~%100%clauses onFileNew(W, _MenuTag) :- X \= query::new(W), X:show().

~%-100%clauses onFileOpen(W, _MenuTag) :- X \= query::open(W), X:show().

~%-100%onFileNew(W, _MenuTag):show().

}

// Початок питання: ПитЗВибором

Зазвичай програма на Visual Prolog складається з чотирьох основних програмних розділів. До них відносяться: {

~%25%clauses (пропозицій);

~%-100%var (змінні)

~%25%predicates (предикатів);

~%25%domains (доменів);

~%-100%procedure(процедури);

~%25%goal (цілей);

~%-100%run (звернення)

}

// Початок питання: ПитЗВибором

Для створення на дереві проекту нового елемента виберіть пункт меню - {

~%-100%File/New in Projekt;

~%100%File/New in New Package

~%-100%File New Package;

~%-100%File New Created;

}

// Початок питання: ПитЗВибором

Для того, щоб викликати діалогове вікно, зображене на малюнку, <img src\='/file.php/225/testi_prolog_images/image002.jpg' alt\=''/> необхідно, виконати наступну команду: {

~%-100%TaskMenu.win/Code Expert

~%100%TaskWindow.win/Code Expert

~%-100%TaskCreate.win/Code Expert

~%-100%TaskDialog.win/Code Expert

}

// Початок питання: ПитЗВибором

Для того щоб створити новий клас і помістити його в існуючий пакет виділіть необхідну папку в дереві проекту і виберіть пункт меню - {

~%-100%File/Open;

~%100%File/New in Existing Package;

~%-100%File/New in New Package;

~%-100%File/Add;

}

// Початок питання: ПитЗВибором

Змінні в програмі Visual Prolog - {

~%-100% Записуються з малої букви;

~%50%Записуються з великої букви;

~%50% Записуються із знака підкреслення;

~%-100%Не можуть містити цифри та підкреслення;

~%-100%Не можуть містити більше 6 символів;

}

// Початок питання: ПитНаВідповідність

Оголошення режимів детермінізму предиката, який вказує на то, чи має він єдиний розв'язок, чи може мати багато розв'язків, здійснюється з допомогою наступних ключових слів. {

=<i>Determ ->

</i>Виконання детермінованого предиката може завершитись або невдало (<i>fail</i>), або успішно (<i>succeed</i>) і при цьому мати один розв'язок.

=<i>Procedure ->

</i>Предикати цього виду завжди завершуються успішно і мають один розв'язок.

=<i>Multi ->

</i>Такий предикат не може завершитись не успішно, при цьому він має безліч розв'язків.

=<i>Nondeterm ->

</i>Недетермінований предикат може завершитись або невдало, або успішно, і при цьому мати безліч розв'язків.

}

// Початок питання: ПитЗВибором

Якщо предикат має багато розв'язків і один із його розв'язків не в змозі задовольнити інший предикат в тій же кон'юнкції, то... {

~%-100%Пролог відмовляється від даної умови і пропонує виконати наступний предикат.

~%-100%Пролог повертається (<i>backtrack</i>) и пропонує відмовитись від спроби задовольнити його.

~%100%Пролог повертається (<i>backtrack</i>) і пропонує інший розв'язок в спробі задовольнити цю кон'юнкцію.

}

// Початок питання: ПитЗВибором

Юлій Цезар сказав - <i>Alea jacta est! Як переводиться цей вислів? {

~%</i>100%Світ є сукупність фактів, а не речей

~%100%Світ розпадається на факти

~%100%Світ визначається фактами і тим, що все є факти.

}

// Початок питання: ПитЗВибором

Яку дію виконує предикат drawLine(Win, P1, P1) {

~%-100%Переносить вікно Win із точки Р1 у точку Р2.

~%100%Проводить лінію із точки P1 до P2 у вікні Win.

~%-100%Будує вікно Win на точках Р1 та Р2 як діагоналях.

}

// Початок питання: ПитЗВибором

Після того, як система знайде знак оклику в кінці предикату наприклад fact(N, 1) :- N<1, !. {

~%-100%вона відмовляється від його розгляду;

~%100%вона перериває пошук нових розв'язків;

~%-100%вона завершує виконання програми;

~%-100%вона переходить на новий предикат;

}

// Початок питання: ПитЗВибором

Щоб протестувати консольну програму, використовують команду <i> {

~%</i>100%Run in Window

~%-100%Execute

~%-100%Build

~%-100%Restart

}

// Початок питання: ПитКороткаВідп

Яке слово пропущено у фрагменті програми {

=predicates

}

// Початок питання: ПитКороткаВідп

Яке слово пропущено у фрагменті програми {

=implement

}

// Початок питання: ПитЗВибором

Якщо передбачається, що предикат буде використовуватись тільки в середині його класу (і він не являється об'єктним), то він оголошується як <i> {

~%</i>100%class predicate

~%-100%class implement

~%-100%classinfo

~%-100%class procedure

~%-100%class fact

}

// Початок питання: ПитКороткаВідп

Імплікація - це зв'язка<i>, </i>яка в Пролозі зображується з допомогою символу :- що означає - <i> {

=Якщо</i>

}

// Початок питання: ПитПропущСлово

Існують вислови (предложения) Хорна, що містять тільки один предикат. Наприклад, city("Salt Lake", pnt(30, 40)). Однопредикатні вислови Хорна називаються {=фактом}

// Початок питання: ПитКороткаВідп

Яке слово пропущено у фрагменті програми {

=class

}

// Початок питання: ПитНаВідповідність

Вкажіть порядок дій, які необхідно виконати для того, щоб створити новий клас<i>:</i> {

=<i>1</i> ->

виділіть корінь дерева проекту

=2 ->

виберіть пункт меню <i>File / New in New Package

=</i>3 ->

флажок в полі <i>Create Objects </i>зняти

=4 ->

скомпілюйте проект, для того щоб вставити прототип нового класу в дерево проекту

}

// Початок питання: ПитЗВибором

В програмі Пролог створення малюнка виконується в методі обробки події - {

=onPaint

}

// Початок питання: ПитЗВибором

Cписок - це впорядкована послідовність елементів, де слово в<i>порядкована </i>означає, що порядок елементів має значення. В Пролозі список записується в квадратні дужки і має: {

~%50%голову

~%50%хвіст

~%-100%тіло

~%-100%заголовок

~%-100%масив

}

// Початок питання: ПитПропущСлово

Схема, що використовується для обчислення суми елементів списку, називається {=редукцією}<i>.</i>

// Початок питання: ПитКороткаВідп

Як називається подана нижче схема для обчислення суми елементів списку ? {

=рекурсивна редукція

=Рекурсивна редукція

}

// Початок питання: ПитЗВибором

Як називається подана нижче схема для обчислення суми елементів списку {

~%100%Ітеративна редукція

~%-100%Інтеративна дедукція

~%-100%Альтернативна індукція

~%-100%Конюктивна редукція

}

// Початок питання: ПитЗВибором

Яку дію виконує наступний рядок записаний в програмі на мові Пролог Sx\=stdio::readLine {

~%100%Зчитує рядок символів у Sx;

~%-100%Перетворює рядок у послідовність символів;

~%-100%Порівнює рядок зчитаний із клавіатури з Sx;

~%-100%Відтворює Sx в командному рядку;

}

// Початок питання: ПитЗВибором

Яку інформацію виведе на екран наступна група операторів frontToken("Студент магістратури", T, R), write(Т), nl. {

~%100%Студент

~%-100%7

~%-100%Студент магістратури

~%-100%Студентмагістратури

}

// Початок питання: ПитЗВибором

Яку дію виконує функція to-Term над рядковою величиною. {

~%100%перетворює рядок в дійсне число

~%-100%перетворює число в рядок

~%-100%перетворює рядок в масив символів

~%-100%обчислює контрольну суму ряду

}

// Початок питання: ПитНаВідповідність

Якщо ви маєте на меті відформатувати число або інші прості терми при перетворенні їх в рядок, ви можете використати функцію форматування string::format. Нижче наведено список типів даних, які приймає рядок що форматується {

=f- ->

Форматувати як дійсне число з фіксованою комою

=d- ->

Форматувати як знакове ціле.

=u- ->

Форматувати як без знакове ціле.

=x- ->

Форматувати як шістнадцятизначне число

=P- ->

Форматувати як параметр процедури.

=s- ->

Форматувати як рядок.

}

// Початок питання: ПитЗВибором

Команда X\=canvas::new(S). {

~%100%створює новий об'єкт X класу <i>window;</i>

~%-100%створює новий об'єкт в робочому вікні;

~%-100%передає змінній Х значення змінної S;

~%-100%перевіряє рівність двох змінних з попереднім опрацюванням S;

}

// Початок питання: ПитЗВибором

Які дії виконуватиме наступний метод реалізований на мові пролог {

~%50%Завантажує графічний файл;

~%50%Малює в заданій точці зображення;

~%-100%Перевіряє доступність для використання графічного файлу;

~%-100%Малює фігуру задану в об'єкті rop_SrcCopy від точки 10,10;

}

// Початок питання: ПитНаВідповідність

Відтворіть список шаблонів графічних методів Прологу {

=pat_Solid: ->

суцільна лінія;

=pat_Horz: ->

горизонтальна штриховка

=pat_Vert: ->

вертикальна штриховка

=pat_FDiag: ->

штриховка з нахилом

}

// Початок питання: ПитПропущСлово

{=Рекурсія} в більшості мов програмування - це такий спосіб організації обробки даних, при якому програма (процедура) викликає сама себе безпосередньо, або за допомогою іншої програми (процедури).

// Початок питання: ПитЗВибором

Будь-яка рекурсивна процедура повинна включати принаймні по одній з нижче перерахованих компонентів {

~%50%Нерекурсивну фразу

~%50%Рекурсивне правило

~%-100%Логічне розгалуження

~%-100%Ітеративну редукцію

}

// Початок питання: ПитЗВибором

Які дії виконує предикат drawEllipse(W, rct(X1, Y1, X2, Y2)), який розміщений у предикаті програми? {

~%100%проводить еліпс у вікні W. Еліпс вписується в прямокутник rct(X1, Y1, X2, Y2),

~%-100%проводить еліпс у вікні W описуючи його навколо прямокутника,

~%-100%вписується в прямокутник rct(X1, Y1, X2, Y2), в еліпс W,

}

// Початок питання: ПитПропущСлово

{=Факт} - це твердження про те, що існує деяке конкретне відношення. Він є безумовно вірним.

// Початок питання: ПитПропущСлово

Предикат однозначно визначається парою: ім'я та кількість аргументів. Два предикати з однаковим ім'ям, але різною кількістю аргументів, вважаються різними. Кількість параметрів предиката називається його arity. При описі предиката {=арність} вказують після його імені, розділяючи їх символом '/' (слеш).

Соседние файлы в папке тести