You are on page 1of 10

Drugi deo jul 2022 Kaja

1. Enkapsulaciona konstrukcija u programskom jeziku C je:


A. Package B. Klasa C.Assembly D.Namespace E.Header file

2. Karakteristika apstraktnog tipa podataka koja omogucava


A. Skrivanje informacija B. Parametrizacija. C. Polimorfizam D.Nasledjivanje E. Enkapsulacija

3. Članice klase u Java paketu (package) koje nemaju modifikator pristupa vidljive su:
A. za klase van tog paketa
B. za članice navedene klase u tom paketu.
C. za drige klase u tom paketu
D. druge klase u tom paketu
E. za clanice date klase

4. Entiteti označeni private k ... u programskom jeziku C++ vidljive su:


A. za članice date klase
B. za članice izvedene klase
C. za clanice friend klase
D. za friend funkcije
E. za sve funkcije

5. Koji, od navedenih, predstavljaja izraze (expression)


A. (x > 0) ? x ;
B. 100
C. x ?? y
D. Nijedan

6. Lambda izraz predstavlja:


A. Tip promenljive
B. Apstraktnu klasu
C. Selekciju
D. funkciju
E. Cinjenicu

7. Na koji način se u programskom jeziku LISP zapisuje primena funkcije c na parametre a i b


A. a c b
B.
C. a b c
D. c (a b)
E. c a b
F. (c a b)

8.Koje koncepte podržava programski jezik ML:


A. dodeljivanje
B. primena funkcije
C. unifikacija
D. promenljive

9. Koje su, od navedenih akcija ispravne ako je dato sledeće produkciono pravilo: Svim neterminalima
pridruzeni su atributi : n(nasledjeni) i s(sintetizovani)
L → T Li

A. L . n = T . n
B. Li . n = T . n + 3
C. Li . s = L . s
D. L. s = T. s
E. T . n = Li . n
F. T . s = L .s
Drugi deo jul 2022 Kaja

10. U kojoj fazi procesa kompilacije se generise tablica simbola:


A. Generisanje koda
B. Leksicka analiza
C. Semanticka analiza
D. Sintaksna analiza
E. Optimizacija koda

11. CIL ( Common Intermediate Language) kod se:


A. kompajlira B. Interpretira C. direktno izvrsava

12. Koje su, od navedenih, karakteristike L- atributske gramatike:


A.Atributi se evaluiraju u postorder redosledu obilaska parsnog stabla
B. Koriste se nasledjeni atributi
C. Koriste se sintetizovani atributi
D. Semanticka analiza moze da se izvrsava za vreme parsiranja

13. Koje su, od navedenih, karakteristike LR parsera


A.Ulazni niz tokena procesira se sleva na desno
B. Koristi postupak redukcije koji je inverzan postupaku desne...
C. Podrzavaju samo S-atributske gramatike
D. Grade parsno stablo od korena prema listovima

14. Koja slova ce se naci u kucicama, nakon resavanja sledecih ukrstenih reci:
Resenja (tj. reci od 2 slova koje su u skladu sa zadatim regularnim izrazima) se upisuju u pravcu koji je naznacen
strelicama
A. A
B. L
C. M
D. N
E. R
F. Y

-pracila regularnih izraza-koja slova mogu da se upisu

15. Koji, od navedenih, stringova NISU definisani pomocu date gramatike


A -> BxCyB
B -> BD | D
C -> B | ByB
D -> a|b|c|d

A. eaybbxccydd
B. aaxbby
C. aaaxbbyzydd
D. baxcdyyd
E. abdxbbyada
F. axeya

16. Koji tip bi se mogao navesti prilikom instanciranja klase K?


class Skup<Neki Tip> where NekiTip : struct { List<NekiTip> elementi = new (list<NekiTip> () ; }

A.Ugovor
B. Tip-enum
C. Paket-struct
D.string
E. bool
F. char
Drugi deo jul 2022 Kaja

17.Koje od navedenih naredbi NIJE ispravno napisati u nastavku Main metode?

Prvi assembly Drugi assembly(referencira prvi) Treci assembly (referencira prvi i drugi)
namespace N1{ using N1; using N1; using N2;
public class X{ namespace N2{ class Z : Y{
protected internal int A; public class Y : X { static void Main(){
private proceted int B; int c ; Z z = new Z();
void Metoda () {} } …
} } }
} }

A.Y y = new Y () ; - instance klase koju nasledjuje


B. X x = new Z() ; - instsnca klase koju nasledjuje
C. z.Metoda() ;-private
D. Console Write( z.b);-private protected samo taj assembly
E. Console Write ( z.c );-private c

18. Iz kojih klasa bi se moglo pristupiti polju broj?

Prvi assembly Drugi assembly(referencira prvi) Treci assembly (referencira prvi i drugi)
namespace N1{ using N1; using N2;
public class K{ namespace N2{ namespace N2{
protected int broj; class C{ } class E : B { }
} class D : B { } class F : D { }-D je privatna
public class A{} } klasa
public class B : K {} }
}
A B C D E F

19. Koje od navedenih poziva bi bilo ispravno navesti u Metodi 4?


public class X{
public void Metoda1() {Console.Write("X"); }
public static void Metoda2() {Console.Write("X"); }
}
public class Y : X { public void Metoda3() { Console.Write ("Y"); }}
public class Z : Y { public void Metoda4(){ Console.Write ("Y"); } }

A. Metoda1();
B. this.Metoda1();
C. this.Metoda2();
D.Metoda2();
E. base.Metoda3();
F. Metoda4();

20. Sta se ispisuje na ekranu (celokupan kod se nalazi u istom assembly-ju)?


using System; using prvi;
namespace prvi {
class K { public void M() => Console.Write(“1”); }
namespace drugi { class K { public void M() => Console.Write(“2”); }
}
...
prvi.K k1 = new prvi.K (); k1.M() ;
prvi.drugi.K k2 = new prvi.drugi.K () ; k2.M();
K k3 = new K() ; k3.M();

A.122 B.221 C. Neka druga vrednost D. Prijavice se greska


Drugi deo jul 2022 Kaja

21. Koje su od navedenih naredbi ispravne?

class X { }
class Y : X { }
class Z : Y { }

A. X a = new Y ( ) ;
B. Y b = new X ( ) ;
C. Z c1 = new Z ( ) ; X c2 = c1 ;
D. Y d1 = new Z ( ) ; X d2 = (X) d1 ;
E. X e1 = new X ( ) ; Y e2 = (Y) e1;
F. X f1 = new X ( ) ; Y f2 = f1 as Y ;

22. Koja je od navedenih klasa ispravna?


class X { int x; public X(int i) { x = i; } }

class A : X {int a; }
class B{int b; public B() : base() { b = 5;}}
class C : B {int c; public C() { b = 5; } } -b je
private
class D : B {int d; public D(int y){ d = y; } }
class E : D ( int e; public E (int z) : base(z){ e = z; }} – D nema neparam pa zove B koja ima neparam

A B C D E F

23. Koja od navedenih naredbi NIJE ispravna?


interface I{ void Metoda(); }

abstract class A { public int x => 1; }


abstract class B { public abstract int M{get;}}
abstract class C : B, I{ public void Metoda(){} } -
class D: C { public override int M {get => 1;}}
sealed class E : D { public int x => 1; }}
class F: E { public int f; }

A B C D E F – da li C moze metoda bez reci abs

24.Koja je od navedenih naredbi ispravna?


interface A { void M( ); }
abstract class B:A{}
class C:B{}
class D:B{}

A. A a = new C(); B. B b = new D(); C. D c = new C(); D. dynamic d = new A();

25.Ako je definisana sledeca parcijalna klasa:


partial class K
{
public int broj;
public K(int b) { broj = b; }
public virtual int M(){ return broj; }
}
koje od navedenih parcijalnih klasa bi se mogle takodje definisati?
A. partial class K { public K():base(){} }
B. partial class K { string broj; }
C. partial class K { static int M() => 0; }
D. partial class K { byte M () {return 1; } }
E. public partial class K {public int M (int x = 0) { broj = x; return 0; } }
Drugi deo jul 2022 Kaja

F. partial class K{void M1 (int broj ) {broj+ = broj;}}

26. Koje od metoda se NE mogu pridruziti delegatu u Main metodi?


public delegate int. Delegat (int a, short b);
public class Klasa {
public int A (ref int a, short b) => a + b;
int B(int a, short b) => a + b; private
public static int C(int a, short b) => a + b;
}
public class Program : Klasa {
public int D(int a, short b) => a + b;
public static int E(int a, short b) => a+b;
public int F(short b, int a) => a + b;
public static void Main() {
Program p = new Program();
Delegat dg = …
}
}

A. p.A B. P.B C. C D. p.D E.E F. p.F

27. Šta je rezultat izvršavanja sledećeg koda u Haskall-u?


fabcdef=a–b*c+d*e–f
f1 = f 1
f2 = f1 2 3
f3 = f2 4
f3 5 6

A. -2 B. -6 C.9 D.15 E. Neka druga vrednost

28. Šta se ispisuje na ekranu?


class A{ public virtual void M1() => Console.Write(1); }
class B:A { public override void M1() => Console.Write(2); }
class C : B {}

List<A> 1 = new List<A>(); l.Add { new A() };
l.Add { new C() }; 1.Add {new B() ; }
foreach (A x in 1) x.M1();

A. 111 B. 222 C. 121 D. 122 E. Neka druga vrednost

29. Koji od, navedenih izraza, vraća broj parnih brojeva u listi brojeva?
A. int a = lista.Count (x => x%2 == 0);
B. int b = lista.Select(x => x%2 == 0) .Count();
C. int c = lista.Where(x => x%2 == 0) .Count();
D. int d = lista.FindAll (x => x%2 == 0) .Count();
E. int e = lista.All ( x=>x%2 == 0) .Count();
F. int f = lista.Any(x => x%2 == 0) .Count();

30. Koju od navedenih metoda je moguće pridružiti definisanom delegatu:


Func<bool, int> -int povratna vrednost
A. static void A(bool x, int y) => Console.Write(5);
B. static void B(int x, bool y) => Console.Write(5);
C. static bool C(int x) => x % 2 == 0;
D. static int D(bool x) => 0;
E. Nijednu

31. Šta se ispisuje na ekranu?


int[] niz = {92, 48, 101, 37, 58};
Drugi deo jul 2022 Kaja

var a = niz.Select (x => new { P = x, O = x/101}).Last (x = > x.P < 60);


Console.Write($”{a.O}:{a.P}”);

58:0

32. Šta se ispisuje na ekranu?


int[] niz = {1, 2, 3, 4, 5, 2, 3};
var v = niz.Select(x => x + x).Distinct().Average();
Console.Write(v);

33. Koja je vrednost promenljive b nakon izvršavanja sledećeg koda?


class Osoba {}
class Student : Osoba {}
class Program{
static int M(int x, int y) => x * y; 10*20
static int Primeni(int y, Func<int, int> f) => f(y);
static Func<int, int> F1(int z) => x => M(x,z);
static Func<int, int> F2() => x => x * x;
static Func<int, int> Odredi(Osoba o) => (o is Student)? F1(20) : F2();
static void Main(){
Osoba a = new Student();
var b = Primeni(10, Odredi(a));
}
}

200

34.Sta se ispisuje na ekranu?


public class A
{
public static int[] niz = new int [5];
public virtual void Prva (int i){ niz[i] += 5; }
public void Druga (int[] niz){niz[3]=4;}
}
public class B : A { }
public class C : B
{
public override void Prva(){}
public new void Druga(){}
}
public class D : C { public override void Prva() {} }

A x = new C{}; x.Prva(); x.Druga{}; //C, A


B y = new B{}; y.Prva(); y.Drgua{}; // A, A
C z = new D{}; z.Prva(); z.Druga{}; // D , C
foreach(int broj is A.niz) Console.Write(broj); - fali telo metoda da bi se znalo kako se niz formira

35. Sta se ispisuje na ekranu?


public class A {
public int[] niz = new int[6];
public A () : this(7) { niz [5] = 1; }
public A (int i) : base() { niz[4] = 1 ; }
}
public class B : A { }
public class C : B {
public C() : this(8) { niz[3] = 2; }
public C (int i) { niz[2] = i; }
Drugi deo jul 2022 Kaja

}
public class D : C {
public D(int i) : this() { niz[2] = i; }
public D() { niz[0] = 3; }
}…
D d = new D(3);
foreach(int broj in d.niz) Console.Write(broj);

303211
Drugi deo jul 2022 Kaja

36. Koja je vrednost promenljive bilans nakon izvršavanja sledećeg koda?


public delegate void Obrada(double suma) ;
public class Racun {
string broj; double sranje;
public Racun(string b, double s) {broj = b, stanje = s;}
public event Obrada Dogadjaj;
public void Promeni(double iznos){
if (stanje + iznos < 0) return;
stanje += iznos;
if(Dogadjaj != null) Dogadjaj(iznos);
}
}
public class Banka {
static double bilans = 725;
static void Azuriraj (double i ) => bilans+=i;
static void Main(){
Racun r1 = new Racun(“111”, 0);
Racun r2 = new Racun(“222”, 0);
r1.Promeni(100);
r1.Dogadjaj += Azuriraj;
r2.Promeni(200);
r1.Promeni(-175);
r1.Promeni(-350);
}

37. Šta se ispisuje na ekranu?


public delegate void Del(int a, ref int b) ;
public class K{
int k = 10;
public void A(int e, ref int f) { e += 2; f += 3; k += e; k += f;}
public void B(int e, ref int f) { e -= 2; f -=3; }
public void C(int e, ref int f) {e *= 2; f *= 3; }
static void Main() {
K x = new K();
K y = new K ();
Del dg = x.A;
for (int i = 7; i >= 1; i--) {
if(i%6 == 0) dg += x.B;
if(i%5 == 0) dg = y.B;
if(i%4 == 0) dg += y.C;
if(i%3 == 0) dg -= x.C;
if(i%2 == 0) dg += x.A;
}
int a = 2; int b = 2;
dg(a, ref b);
Console. Write($"{x.k}:{y.k}");
}
}

21:10
Drugi deo jul 2022 Kaja

38. Šta je rezultat izvršavanja sledećeg koda?


public delegate void Operacija(ref int x);
class Skup{
public int[] niz = {6,5,4,3,2};
public int this[int pozicija] { get { return niz[1-pozicija];} }
}
static class Prosirenja {
public static void Mapiraj (this Skup s, Operacija op){ for (int i = 1; i < 4; i++) op(ref s.niz[i]); }
}

class Program{
static void Povecaj (ref int x) { x += 5; }
static void Smanji (ref int x) { x -= 3; }
static void Main(){
Skup x = new Skup();
Operacija o = Smanji;
o += Povecaj;
x.Mapiraj(o);
try { for (int i = -3; i <= 0; i++) Console.Write(x[i]); }
catch(Exception){Console.Write("X");}
}
}

2567

39. Ako je dat sledeći kod u Prolog-u?


autom (m, a, 1.5). autom (m, b, 2). autom (b, c, 4.5).
vozom (m, d, 5). vozom (b, c, 0.5). vozom(a, d, 6).
avionom(b, f, 4). vozom(c, e, 3.5). avionom (m, e, 5).

Put (X, Y, Z) :- autom (X, A, 21), vozom(A, B, 22), avionom (B, Y, Z), Z is Z1 + Z2 + Z3
Sa kojim vrednostima će se unificitati promenljiva Q tokom izvršavanja upita:
? - Put (m, P, Q)

40. Šta je rezultat izvršavanja sledećeg koda u Haskell-u?


funkcija [element] = 2
funkcija (prvi : drugi : rep)
| prvi > drugi = funkcija (drugi : rep)
| prvi <= drugi = prvi + drugi + funkcija rep
funkcija [4,1,2,5,7,6]

NAPOMENA:
U nekim od narednih zadataka će se koristiti sledeći tipovi podataka:

public enum Tip


{ Biznis, Privatni}

public struct Paket {


public string naziv;
public int poruka;
public byte minuta;
public int kB;
}

public class Ugovor {


public string broj;
public Tip tip;
Drugi deo jul 2022 Kaja

public Paket paket;


public double cena;
}

You might also like