Номерацията на въпросите и възможните отговори не е оригиналната. Всичко е възпроизведено по памет, затова е възможно някои въпроси и/или отговори да не са били точно такива, но е запазена идеята им. --------------------------------- 1) Кой протокол се използва за да се разбере MAC адреса ако се знае мрежовият адрес? a) RARP b) DHCP (c) ARP d) Proxy ARP 2) Дадени са IP адресът 147.67.0.0 и маската 255.255.255.224. Колко подмрежи могат да се направят и по колко IP адреса ще има всяка от тях? a) 1024, 32 (b) 2048, 32 c) 1024, 64 d) Нито едно не е вярно 3) Кой от следните протоколи използва UDP? a) HTTP (b) DNS c) FTP d) SMTP 4) Как се нарича протоколът за намиране на интернет (IP) адреса по дадено име на домейн? a) DHCP (b) DNS c) ТFTP d) SNMP 5) Дадено е пълно бинарно дърво с n елемента. По коя формула се определя височината му, h? a) h = log2(n+1) (b) h = log2(n) c) h = log2(n-1) d) h = log10(n-1) 6) В ОС LINUX, какво съдържа файловият дескриптор? a) името на файла (b) идентификатор на отворен файл c) името и атрибутите на файла d) структура, описваща заетите от файла блокове 7) Кое не е дисциплина за планиране на процеси? a) FCFS (First Come, First Served) b) RR (Round Robin) (c) LRU (Least Recently Used) d) SJF (Shortest Job First) 8) Дадена е програмата за ОС LINUX, на езика C: int fd; char buf = 'X'; fd = creat("file.txt", 0666); fork(); write(fd, &buf, 1); Какъв ще бъде ефектът от изпълнението и? a) Във файлът ще се запише веднъж буквата 'X'. b) Файлът ще остане празен. c) Примитивът write ще върне грешка. (d) Във файлът ще се запише два пъти последователно буквата 'X'. 9) Дадена е програма за ОС LINUX, на езика C; предполагаме, че файл с име file.txt вече съществува: int fd; char buf1, buf2; close(0); fd = open("file.txt", O_RDONLY); read(fd, &buf1, 1); read(fd, &buf2, 1); Какъв ще бъде ефектът от изпълнението и? a) Ще бъде прочетен, два пъти, първият символ от файла и ще бъде записан в buf1 и buf2, съответно. (b) Ще бъдат прочетени първите два символа от терминала и ще бъдат записани в buf1 и buf2, съответно. c) Второто извикване на read че върне грешка. d) Ще бъдат прочетени първите два символа от файла и ще бъдат записани в buf1 и buf2, съответно. 10) Следната операция включва елемент в структура от данни: void Add(structure* S, int k) { node* p; p = (node*)malloc(sizeof(node)); p->next = *S; p->data = k; *S = p; } Коя e структурата? a) двусвързан списък (b) стек c) бинарно дърво d) опашка 11) Дадена е следната декларация на тип за елементите на някаква структура от данни. #define DEGREE 2 struct node { int data; struct node* children[DEGREE]; }; Коя e структурата? a) двусвързан списък b) стек (c) бинарно дърво d) опашка 12) Какво ще изведе интерпретаторът на Prolog при следната прогрма за събиране на вектори: vs([], [], []). vs([X|L1], [Y|L2], [R|S]) :- R is X + Y, vs(L1, L2, S). и въпрос: ?- vs([2, 5, 3], [1, 2], L). (a) L = [3, 7, 3] b) no c) L = [3, 7] d) yes 13) Какво прави следната програма на Prolog? guess([], 0). guess([H|T], N) :- guess(T, M), N is M + H a) Намира броят на елементите на списък b) Намира дължината на смисък (c) Намира сумата от елементите на списък d) Друг отговор 14) Какво намира следната програма на Prolog, ако max(A,B,C) връща в C по-голямото число измежду A и B? f([X], X) :- !. f([H|T], N) :- f(T, M), max(M, H, N). a) Всички елементи по-големи от първия b) Всички елементи по-малки от първия (c) Най-големия елемент в списък d) Всиски елементи без първия 15) Какво прави следната програма на Prolog? guess([X], X). guess([H|T], N) :- guess(T, M), N is M + H a) Намира броя на елементите на списък b) Намира дължината на списък (c) Намира сумата от елементите на списък d) Нито едно от посочените 16) Какво ще изведе интерпретаторът на Prolog при прогрмата: f([], []). f([H|T], [H|S]) :- atomic(H), !, f(T, S). f([H|T], S) :- f(H, H1), f(T, T1), a(H1, T1, S). a([], L, L). a([H|T], L, [H|S]) :- a(T, L, S). и въпрос: ?- f([a, [[b, c], [d]]], L). a) [a, [b, [c, [d]]]] b) [[a], [b], [c], [d]] c) [d, c, b, a] d) [a, b, c, d] 17) Кой е правилният начин за намиране на абсолютна стойност? abs(X, Y) трябва да върне в Y абс. стойност на X. (a) abs(X, X) :- X >= 0, !. abs(X, Y) :- Y is - X. b) abs(X, X) :- X >= 0. abs(X, -X). c) abs(X, X) :- X >= 0, !. abs(X, -X). d) abs(X, X) :- X >= 0. abs(X, Y) :- Y is - X. 18) Какво ще изведе интерпретаторът на Prolog при прогрмата: append([], L, L). append([H|T], L, [H|T1]) :- append(T, L, T1). и въпрос: ?- append(X, [], X), write(X), fail. a) yes b) fail (c) Ще зацикли d) no 19) Какво ще изведе интерпретаторът на Prolog при въпросa: ?- repeat, write(ok). (a) ok yes b) fail c) Съобщение за грешка d) okokokok... зацикляне 20) Какво ще изведе интерпретаторът на Prolog при въпрос ?- true, fail; not true, not fail; true, not fail a) fail b) yes c) true d) no 21) Полиморфизмът е: a) свойство на един обект да бъде разглеждан като множество различни видове обекти b) свойство на един указател към обект да бъде разглеждан като множество ралзлични видове указатели към обекти (c) Първите две са верни d) Първите две не са верни 22) Предаването на съобщения в ООП означава: a) статично извикване на метод (b) динамично извикване на метод c) статично обвързване с функцията d) динамично обвързване с функцията 23) Кой от алгоритмите за търсене не е пълен? (a) depht-first (търсене в дълбочина) b) Beam-search (търесене в лъч) c) breadth-first (търсене в ширина) d) А* 24) Кой от алгоритмите използва най-малко памет? (a) алгоритъм на итеративното задълбочаване b) Hill climbing (най-бързо изкачване) c) breadth-first (търсене в ширина) d) А* 25) В коя област от Изкуствения интелект се използва ситуационното смятане (situational calculus)? a) търсене в пространство от състояния b) машинно самообучение c) обработка на естествен език d) планиране 26) За какво служат рамковите аксиоми (frame axioms) в ситуационното смятане? a) задават началните условия за обектите b) описват дадено състояние на обектите c) определят кои факти ще останат в сила след изпълнението на дадено действие d) определят кои факти ще престанат да са в сила след изпълнението на дадено действие 27) Какъв ще бъде резултатът от изпълнението на следната функционална програма: (define (f x y) (if (= x 1) (- x) y)) (define (g) ((lambda () 1))) (define (h) (h)) (f (g) (h)) ако реализацията на интерпретатора се основава на нормалния модел на оценяване? a) съобщение за грешка b) изпълнението няма да завърши c) 1 (d) -1 28) Какъв тип изчислителен процес генерира следната функционална програма: (define (f a b) (define (f1 a b p) (cond ((= b 0) p) ((even? b) (f1 (* a 2) (/ b 2) p)) (else (f1 a (- b 1) (+ p a))))) (f1 a b 0)) a) логаритмичен рекурсивен процес (b) логаритмичен итеративен процес c) линеен рекурсивен процес d) линеен итеративен процес 29) Какъв ще бъде резултатът от изпълнението на следната функционална програма: (define (f l1 l2) (map (lambda (x) (cons x l1)) (map car l2))) (f '(a b c d) ((1 2) (3 4) (5 6))) a) ((1 a) (2 b) (3 c) (4 d)) b) ((1 a b c d) (3 a b c d) (5 a b c d)) c) (((a b c d) 1) ((a b c d) 3) ((a b c d) 5)) d) ((a 1 2) (b 3 4) (c 5 6)) 30) HSV е: (a) модел за представяне на цветовете в графични файлове b) текстов файлов формат, даващ възможност за директно отпечатване на PostScript принтер чрез командата на MS-DOS print c) двоичен файлов формат, даващ възможност за директно отпечатване на PostScript принтер чрез командата на UNIX lp d) нито едно от предходните не е вярно 31) Алгоритъмът да средната точка служи за: a) изчертаване на гладки криви от висока степен (b) изчертаване на окръжности и елипси c) определяне на пресечната точка на две отсечки d) нито едно от предходните не е вярно 32) Запълването на деден обект, например многоъгълник с текстура се използва за: a) определяне на видимата част от многоъгълника в сложни триизмерни конфигурации (b) създаване на усещане на грапавост на обекта c) анимация на движението на обекта d) нито едно от предходните не е вярно 33) Дадена е подпрограма на псевдоезик, подобен на C, в който има само целочислени променливи. X1, X2, Y1 и Y2 са параметри на подпрограмата, задаващи декартовите координати на две точки -- p1 и p2. dx = X2 - X1; dy = Y2 - Y1; e = dx - 2 * dy; x = X1; y = Y1; for (i = 0; i < dx; i = i + 1) { plot(x, y); while (e < 0) { e = e + 2 * dx; y = y + 1; } e = e - 2 * dy; x = x + 1; } Какво чертае подпрограмата? a) окръжност с център p1, минаваща през p2 b) елипса с фокуси точките p1 и p2 (c) отсечка с краища p1 и p2, с наклон не по-голям от 45° d) окръжност с център p2, минаваща през p1 34) Алгоритмите за запълване на многоъгълник чрез изчертаване на хоризонтални или вертикални линии използват: (a) сортиране на ръбовете на многоъгълника b) бинарно дърво за съхраняване на върховете c) обхождане на върховете по часовниковата стрелка d) сортиране на точките, които са среди на ръбовете 35) При решаването на коя задача не може директно да се приложи алгоритъмът на Сайръс Бек? (a) намиране на сечението на окръжност и изпъкнал многоъгълник b) намиране на частта от отсечка, която попада в правилен многоъгълник c) намиране на видимата част от права, на екрана d) намиране на видимата част на отсечка, отсечена от изпъкнал седмоъгълник 36) Кой алгоритъм е най-подходящо да се използва за изчертаването на видимата част на буквата 'B' на екрана? a) алгоритъм на средната точка b) алгоритъм на Сайръс Бек c) алгоритъм на Брезенхам (d) алгоритъм на Съдърланд-Хочман 37) ;) 38) Посочете грешното твърдение за основния ключ: a) може да се състои от няколко атрибута (b) не може да бъде едновременно и външен ключ c) по него се определят еднозначно кортежите d) може да съдържа числови и символни данни 39) Четири от основните пет операции на релационната алгебра са U, x, п(пи) и 6(сигма). Липсващата пета основна операция е: a) сечение (b) разлика c) съединение d) допълнение