1) Programowanie imperatywne jest ściśle związane z budową sprzętu komputerowego o architekturze: von Neumanna
2) Abstrakcją komórek pamięci (w paradygmacie imperatywnym) są: zmienne
3) Dziedziczenie jest cechą charakterystyczną dla programowania: obiektowego
4) Obiekt to powiązanie danych z: operacjami na tych danych
5) W programowaniu funkcyjnym nie występują: pętle
6) Automatyczne dowodzenie twierdzeń (prostych...) jest możliwe w programowaniu: obiektowym
7) Język C++ reprezentuje paradygmat: imperatywny i obiektowy
8) Pierwszym językiem obiektowym był język: Simula 67
9) Czy optymalizacja kodu wykonywana przez kompilator może poprawić asymptotyczną złożoność obliczeniową programu? tak, ale rzadko
10) Składnię języków programowania opisuje się za pomocą gramatyk: bezkontekstowych
11) Program może zawierać dwie różne zmienne o tej samej nazwie, gdy są to zmienne: lokalne w dwóch różnych blokach
12) L-wartością nazywamy: bieżący adres zmiennej
13) Wiązanie statyczne: następuje przed wykonaniem programu
14) Wnioskowanie o typie zmiennej jest najczęstsze w językach: funkcyjnych
15) Okres życia zmiennej to: czas pomiędzy alokacją zmiennej a jej realokacją
16) Obiekty w Javie są alokowane: dynamicznie, na stercie
17) Spośród wymienionych tu języków najbliższy silnemu typowaniu jest: C#
18) Silne typowanie bywa ,,osłabiane przez: niejawne konwersje typów
19) Podtyp to: typ powstały przez ograniczenie zakresu istniejącego typu, zgodny z owym typem
20) W języku C++ dostęp do przesłoniętej zmiennej nielokalnej można uzyskać za pomocą operatora: :: (dwa dwukropki)
21) Pojęcie typu w językach imperatywnych bliskie jest pojęciu: zbioru skończonego
22) Który z opisanych poniżej typów można uznać za typ abstrakcyjny? Rzecz dzieje się w języku C: wbudowany typ float
23) W której sytuacji tablica asocjacyjna byłaby istotnie wygodniejsza niż zwykła tablica? zapisujemy kolor przejeżdżających samochodów, identyfikując je numerami rejestracyjnymi
24) Ewentualne luki między przechowywanymi w pamięci polami rekordu biorą się z: konieczności umieszczania pól pod adresami, których 1 lub 2 najmniej znaczące bity są zerami
25) Załóżmy, że w języku C sprawdzamy równość struktur (oczywiście tego samego typu). Dlaczego w ogólności nie można tego zrobić przez porównywanie bloków pamięci? napisy mogą zawierać nieistotne znaki za znacznikiem końca
26) Który operator języka C jest potrzebny, gdy wykorzystujemy wskaźniki do adresowania pośredniego? &
27) Załóżmy, że p jest zmienną wskaźnikową. W którym języku wyrażenie ++p jest poprawne? C++
28) Które stwierdzenie jest fałszywe w odniesieniu do klas w języku C++? konstruktor nie może być przeciążany
29) W Javie obiekty są alokowane: dynamicznie na stercie
30) Sparametryzowane typy abstrakcyjne uzyskuje się w C++ za pomocą deklaracji z użyciem słowa kluczowego: template
31) Który język nie pozwala na użycie parametrów z wartością domyślną? C
32) Przekazanie funkcji jako parametru można w C# osiągnąć za pomocą mechanizmu: delegatów
33) Który język nie sprawdza zgodności typów parametrów? PHP
34) Przy której deklaracji procedury f wywołanie f(2*x + 3) jest poprawne? void f(int n) w języku C
35) Chcąc w języku C przekazać do funkcji tablicę przez wartość, trzeba: "obudować" ją strukturą i przekazać tę strukturę
36) Jaką dodatkową cechę mają parametry stałe deklarowane w C++ z użyciem const w stosunku do parametrów w trybie wejściowym w ogóle? nie mogą być zmieniane nawet w obrębie podprogramu
37) Załóżmy, że x jest parametrem w trybie out w procedurze w Adzie. Która instrukcja ma szansę być poprawna? x := y + 1
38) Jawne przekazywanie przez referencję jest w C# możliwe, jeśli umieścimy słowo kluczowe ref: i przy parametrze formalnym, i przy aktualnym
39) W językach z zakresem widoczności zmiennych wiązanym statycznie jako środowiska wykonywania przekazanego przez parametr podprogramu najczęściej używa się: środowiska definicji przekazanego podprogramu
40) W implementacji podprogramów bez zagnieżdżeń, ale z rekurencją i z dynamicznymi zmiennymi lokalnymi na stosie potrzebne jest przechowywanie w rekordzie aktywacyjnym: tylko łącza dynamicznego
41) Której cechy język obiektowy nie musi posiadać? podprogramy rodzajowe
42) Jakie ograniczenie na przedefiniowywanie metod trzeba narzucić w języku silnie typowanym? przedefiniowana metoda musi zachować taki sam protokół
43) Rozstrzyganie odwołań do bytów o takiej samej nazwie mających definicje w dwóch klasach bazowych odbywa się w C++ za pomocą: operatora :: (dwa dwukropki)
44) W języku C++ obiekty zaalokowane na stosie dealokowane są: niejawnie
45) Językiem, w którym stosowane jest zawsze dynamiczne wiązanie wywołań z metodami, jest: Smalltalk
46) Językiem, w któym klasa może być samoistna (tzn. nie mieć nadklasy), jest: C++
47) W języku C++ metody, które mają być wiązane dynamicznie, deklaruje się za pomocą: słowa virtual
48) Który nagłówek poprawnie deklaruje w C++ metodę abstrakcyjną? virtual void p()=0;
49) Klasy "lekkie", deklarowane jako struct, alokowane na stosie i nie pozwalające na dziedziczenie występują w: C#
50) Który element nie występuje w JavaScripcie? Klasy
51) Czego z zasady nie ma w językach funkcyjnych? Pętli
52) Która cecha jest typowa dla języków funkcyjnych, a rzadko występuje w językach imperatywnych i obiektowych? możliwość używania funkcji wyższego rzędu
53) Listy służą w Lispie do zapisywania: i danych, i kodu
54) Wywołanie ((LAMBDA (x) (* x x)) 2) w języku Scheme: wyświetli 4
55) Funkcja DISPLAY w języku Scheme: wyświetla swój argument na ekranie
56) Wartością wyrażenia (CAR ‘(A B C)) w języku Scheme jest: A
57) Wartością wyrażenia (CONS ‘(A B) ‘(C D)) w języku Scheme jest: ((A B) C D)
58) Jak w języku Scheme należy zapisać wywołanie złożenia funkcji f z samą sobą na argumencie x, czyli (f o f)(x)? (f (f x))
59) Które stwierdzenie nie jest prawdziwe w odniesieniu do języka ML? lista może zawierać elementy różnych typów
60) Do łączenia list w Haskellu służy: operator ++
61) Używane w Prologu klauzule Horna mają w następniku: zero lub jeden term
62) Stosowana w Prologu metoda wnioskowania to: rezolucja
63) Klauzula "dziadek(X, Z) :- ojciec(X, Y), ojciec(Y, Z).": mówi tylko, że jeśli X jest ojcem Y i Y jest ojcem Z, to X jest dziadkiem Z
64) Do tworzenia i rozkładania list w Prologu stosuje się: operator | i odpowiednie dopasowania
65) Zapis "X is 3 * Y + 4" w Prologu powoduje: utożsamienie (lub sprawdzenie utożsamienia) zmiennej X z wartością wyrażenia 3*Y+4
66) Jeśli Prologowi nie uda się udowodnić jednego z podcelów, to: wraca do poprzednich podcelów, próbując znaleźć alternatywne rozwiązania
67) Dla stwierdzeń złożonych Prolog stosuje: przeszukiwanie w głąb
68) Zapis [X | Y] w Prologu oznacza: listę, gdzie X jest głową, a Y -- ogonem listy
69) Jaką klauzulę należałoby dopisać przed ,,f(X, [_ | Y]) :- f(X, Y).", by otrzymać funktor sprawdzający przynależność elementu do listy? f(X, [X | _]).
70) Lista [1, [2, 3], 4, []] ma długość: 4
71) Jeśli jest termem rachunku lambda, zaś jest zmienną, to nazywamy: abstrakcją
72) W termie wolna jest zmienna:
73) Który term jest wynikiem -konwersji termu ?
74) Wynikiem -redukcji termu jest term:
75) Aplikacja zwana jest redeksem, jeśli: jest w postaci abstrakcji
76) Mówimy, że term jest w postaci normalnej, jeśli: żaden jego podterm nie jest redeksem
77) Postać normalna (o ile istnieje) jest unikalna z dokładnością do: -konwersji
78) Przymując standardową reprezentację liczb naturalnych w rachunku lambda, term reprezentuje: dodawanie
79) Funkcje reprezentowalne w rachunku lambda (klasycznym, beztypowym) odpowiadają dokładnie modelowi: funkcji obliczalnych totalnych (nieczęściowych)
80) Operator punktu stałego to term taki, że dla dowolnego termu aplikacja jest równa, modulo -redukcja:
81) Rachunek sigma opisuje obiekty na poziomie abstrakcji podobnym do tego, na którym funkcje są opisywane przez: rachunek lambda
82) Podobnie jak w rachunku sigma, obiekty bez klas pojawiają się w języku: JavaScript
83) Która relacja nie pasuje do pozostałych w kontekście języka C++? relacja zawierania bloków kodu
84) W rachunku sigma obiekt to zbiór metod, dla których mamy dwie operacje — wywołanie i: nadpisanie
85) W rachunku sigma każda metoda posiada ciało oraz parametr reprezentujący: jaźń obiektu
86) Zapis oznacza: obiekt zawierający jedną metodę, zwracającą obiekt pusty
87) Jeśli jest obiektem , to wywołanie da w wyniku:wywołanie to nie da wyniku, gdyż obliczenia nie kończą się
88) Jeśli jest obiektem , to wywołanie da w wyniku: obiekt
89) Relacja redukcji (rozszerzona, z gwiazdką) w rachunku sigma spełnia własność Churcha-Rossera. Oznacza to, że jeśli i , to: istnieje ...
wojtek0018