PP1/Pitalice
Na sledećoj stranici sakupljene su pitalice sa testova pred laboratorijske vežbe. Nisu navedene ni u jednom konkretnom redosledu, i slične pitalice mogu biti spojene.
- Za pitanja sa više odgovora, tačni odgovori su podebljani i uokvireni
- Za pitanja za koje se odgovori unose, tačni odgovori su podvučeni i sakriveni, tako da se prikažu kada izaberete taj tekst (primer: ovako)
- Pritisnite levo dugme ispod za sakrivanje i otkrivanje svih odgovora, ili desno dugme za uključivanje i isključivanje interaktivnog režima:
2. laboratorijska vežba
1. pitanje
Spojiti oblike numeričkih literala sa odgovarajućim tipovima podataka na programskom jeziku Python:
0b11101: intj2.0: greška0oF117: greška0x123: int-1.E-2j: complex.9969e3: float0d112: greška0o1812: greška0xabc: int
2. pitanje
Šta ispisuje sledeći fragment koda na programskom jeziku Python?
j = 5.0
x = 0
while j > 1:
j //= 2
x += 1
else:
x += 1
print(x)
Rešenje: 3
Objašnjenje: U prvoj iteraciji petlje j će se smanjiti na 2 (5 podeljeno sa 2 zaokruženo na niži broj) a u drugoj na 1 (2 podeljeno sa 2), i zatim će se izvršiti deo koda u else.
3. pitanje
Koja su tvrđenja tačna u vezi sa tipovima na programskom jeziku Python?
- Promenljiva se ne može promeniti nakon prve dodele vrednosti.
- Specijalna vrednost
Noneoznačava da promenljiva nema vrednost, ali je definisana. - Imena identifikatora se mogu sastojati samo od velikih i malih slova i znaka
_, ali ne smeju počinjati znakom_. - Uništavanje promenljivih se obavlja dinamički ili upotrebom naredbe
del. - Tip podataka precizira skup vrednosti i operacija koje se mogu primeniti na neki objekat.
- Rezervisane reči smeju biti korišćene kao imena identifikatora, ali se onda ne mogu koristiti odgovarajuće konstrukcije.
4. pitanje
U kojim od navedenih izraza na programskom jeziku Python, nakon izračunavanja promenljiva x ima vrednost False?
x=not 21 and 8!=3x=86>=86>87x=not True or False and Truex=not((not 0)==(not 3))x=bool("False")x=bool(-1)
5. pitanje
Koja su tvrđenja tačna za navedene funkcije, naredbe i kontrolne strukture na programskom jeziku Python?
- Naredba
continueprekida izvršavanje tekuće iteracije petlje i prelazi na sledeću. - Grana
elsese kod petlji izvršava samo ukoliko se petlja regularno završi. - Ukoliko se telo
forpetlje sastoji od više naredbi, one moraju biti podjednako uvučene u odnosu na ključnu rečfor. whilepetlja može da se direktno koristi za iteriranje kroz kolekcije.- Ukoliko postoji
elifgrana kodifuslovnog grananja, onda obavezno mora postojati ielsegrana.
6. pitanje
Spojiti opise funkcija sa imenima funkcija koje se koriste za rad sa listama u programskom jeziku Python.
- Dodavanje elementa na zadatu poziciju:
insert() - Dohvatanje dužine liste:
len() - Uklanjanje člana po vrednosti:
remove() - Dodavanje pojedinačnih elemenata na kraj liste:
append() - Inicijalizacija liste:
list() - Uklanjanje člana sa zadate pozicije:
pop()
7. pitanje
Koja su tvrđenja tačna za navedene funkcije, naredbe i kontrolne strukture na programskom jeziku Python?
- Funkcija
range(n)generiše sekvencu vrednosti u opsegu od 1 don. - Naredba
breaknasilno prekida telo petlje na mestu na kome je izvršena. whilepetlja ponavlja blok naredbi dok god je zadati logički uslov ispunjen.- Uslovno grananje sa
ifuvek mora da poseduje odgovarajućuelsegranu. - Naredba
passse koristi za napuštanje bloka koda na mestu na kome je pozvana.
8. pitanje
Koji uslovni izraz odgovara izvršavanju sledećeg koda na programskom jeziku Python?
if a % 2 == 0:
b = c
else:
b = d
Odgovor: b = c if a % 2 == 0 else d
3. laboratorijska vežba
1. pitanje
Koja tvrđenja su tačna u vezi rada sa funkcijama na programskom jeziku Python?
- Funkcije ne mogu imati podrazumevane vrednosti argumenata.
- Argument funkcije može biti druga funkcija.
- Dozvoljeno je definisati funkciju u okviru druge funkcije.
- Argumenti funkcije se na programskom jeziku Python prenose isključivo po referenci.
- Funkcija može u okviru svog tela sadržati samo jednu
returnnaredbu.
2. pitanje
Koja su tvrđenja tačna na programskom jeziku Python u vezi sa prostorima imena i opsegom važenja promenljivih?
- Rekurzivna funkcija je funkcija koja poziva samu sebe.
- Pri pozivu svake funkcije kreira se lokalni prostor imena te funkcije.
- Kada se program pokrene kreira se globalni prostor programa.
- Za dohvatanje promenljive koja se nalazi u okružujućoj funkciji iz unutrašnje funkcije koristi se ključna reč
local. - Ako u funkciji Fx nije definisana promenljiva foo, nije neophodno koristiti ključnu reč
globalkako bi izmenili vrednost globalne promenljive foo u funkciji Fx.
3. pitanje
Koja su tvrđenja tačna na programskom jeziku Python u vezi prostora imena i opsega važenja promenljivih?
- Isto ime može postojati u više prostora imena.
- Definicija promenljive u funkciji sakriva vidiljivost globalne promenljive sa istim imenom.
- Globalnoj promenljivoj može se pristupati iz svih funkcija.
- Python ne dozvoljava da se funkcija definiše unutar druge funkcije.
- Globalnoj promenljivoj može se pristupati samo korišćenjem ključne reči
global.
4. pitanje
Koja tvrđenja su tačna u vezi rada sa funkcijama na programskom jeziku Python?
- Blok koji sadrži naredbe u okviru tela funkcije započinje znakom : (dvotačka).
- Funkcija može imati promenljiv broj parametara.
- Nakon deklaracije funkcije se opciono navodi dokumentacioni
string. - Funkcijski blok obavezno počinje rezervisanom reči
var. - Ukoliko funkcija ne vraća vrednost naredba
returnmora obavezno vratiti vrednostNone.
5. pitanje
Neka se posmatra sledeći deo koda na programskom jeziku Python:
def funkcijap (a, b, c):
a += 10
b[0] = a
b[1:] = b[:0:-1]
c += "str"
return
a = 1
b = 3 * [1, 2]
c = "a"
funkcijap (a, b, c)
Za svaku od navedenih promenljivih,ispravno definisati da li će promena stvarnog argumenta u potprogramu biti vidljiva u glavnom programu.
b: promenjenaa: nepromenjenac: nepromenjena
6. pitanje
Neka se posmatra sledeća funkcija koda na programskom jeziku Python:
def poruka (i, k = 0, tip = "i"):
p = i if tip == "i" else k*0.3 + i*0.7
return "polozio" if p > 50 else "pao"
Koji su sve pozivi funkcije korektni?
Izaberite jedan ili više odgovora:
- poruka (tip="k", i = 50, k = 20)
- poruka (90)
- poruka (tip="k", k = 20)
- poruka ()
- poruka (20, tip="k")
- poruka (tip="i", k = 20, i = 70)
- poruka (tip="k", 20, 70)
- poruka (50, 20)
- poruka (tip="i", 20, i = 70)
- poruka (tip="i")
7. pitanje
Neka se posmatra sledeća funkcija koda na programskom jeziku Python:
def povrsina (a = 0, b = 0, c = 0):
if a and b and c:
s = (a + b + c) / 2
return (s*(s-a)*(s-b)*(s-c))**0.5
elif a and b:
return a * b
elif a:
return a * a
else:
return 0
Koji su sve pozivi funkcije korektni?
Izaberite jedan ili više odgovora:
- povrsina (a = 5, c = 6, 10)
- povrsina (b = 6)
- povrsina (20, c = 16)
- povrsina (5, 6, 7)
- povrsina (a = 4, c = 5, 8)
4. laboratorijska vežba
Ovaj rok nije rešen. Pomozite SI Wiki tako što ćete ga rešiti.
1. pitanje
Kada se metodi format zada željena širina polja pri ispisu, sadržaj se (podrazumevano) uravnava:
Izaberite jedan odgovor:
- uz levu ivicu, bez obzira na tip podataka koji se ispisuje
- uz levu ivicu, ako se ispisuju numerički podaci
- uz levu ivicu, ako se ispisuju tekstualni podaci
2. pitanje
Koje su sve operacije nad stringovima dozvoljene od ponuđenih, ukoliko su zadate sledeće deklaracije:
s1 = "trla baba lan"
s2 = "da joj prođe 5. dan"
i = 5
Izaberite jedan ili više odgovora:
- s3 = i in s2
- s3 = s1[i] in s2
- s3 = s1[:4] in s2[7:]
- s1[3:5] = s2[7:9]
- (s1+s2)[2]
3. pitanje
Koja tvrđenja su tačna prilikom poziva sledeće funkcije format? U promenljivoj str se nalazi tekstualna vrednost.
"{:x,y}".format(str)
Izaberite jedan ili više odgovora:
- 'y' predstavlja minimalan broj mesta za ispisivanje promenljive
str - 'x' predstavlja minimalan broj mesta za ispisivanje promenljive
str - 'y' predstavlja maksimalan broj mesta za ispisivanje promenljive
str - 'x' predstavlja maksimalan broj mesta za ispisivanje promenljive
str
5. laboratorijska vežba
1. pitanje
Koja tvrđenja su tačna u vezi rada sa torkama na programskom jeziku Python?
- Torka predstavlja uređenu i promenljivu kolekciju podataka.
- Torka može da sadrži elemente različitog tipa.
- Objekat prazne torke može se formirati korišćenjem funkcije
tuple(), kao i notacijom(). - Svaki element torke u torki se pojavljuje samo jedanput(nema duplih elemenata).
- Moguće je iterirati(vršiti obilazak kolekcije) kroz objekat torke.
2. pitanje
Koja tvrđenja su tačna u vezi rada sa izuzecima na programskom jeziku Python?
- Blok
finallyse izvršava bez obzira da li je kod unutartrybloka generisao izuzetak ili ne. - Moguće je uhvatiti jedan ili više tipova izuzetaka u
exceptbloku. - Blok
finallyse izvršava bez obzira da li je kod unutarexceptbloka generisao izuzetak ili ne. - Izuzetak se može generisati isključivo upotrebom naredbe
raise. - Blok
elsese izvršava bez obzira da li je kod unutartrybloka generisao izuzetak ili ne.
3. pitanje
Spojiti odgovarajuće režime otvaranja datoteka na programskom jeziku Python koji se zadaju funkciji open() sa navedenim opisima.
Упис у текстуалну датотеку уколико претходно не постоји: xЧитање текстуалне датотеке: rУпис у бинарну датотеку: wbЧитање бинарне датотеке: rbУпис у текстуалну датотеку: wДодавање на крај текстуалне датотеке: a
4. pitanje
Spojiti odgovarajuće opise standardnih izuzetaka sa imenima tipova standardnih izuzetaka na programskom jeziku Python.
Баца се када улазно-излазна операција не успе, као што је отварање датотеке која не постоји.: IOErrorБаца се када се некоректан индекс(индекс ван опсега) употреби за приступ секвенци.: IndexErrorБаца се када идентификатор не може да се пронађе у локалном или глобалном простору имена.: NameError
5. pitanje
Koja tvrđenja su tačna u vezi rada sa skupovima na programskom jeziku Python?
- Skup se može formirati zadavanjem liste ili
stringakao argumenta funkcijeset. - Svaki element skupa u skupu se pojavljuje samo jedanput(nema duplih elemenata).
- Moguće je iterirati(vršiti obilazak kolekcije) kroz objekat skupa.
- Skup predstavlja uređenu i nepromenljivu kolekciju podataka.
- Objekat praznog skupa može se formirati korišćenjem funkcije
set(), kao i notacijom().
6. питање
Шта све може бити елемент објекта скупа на програмском језику Python?
- Литерал типа
int(npr. 153).
- Objekat tipa liste (npr.[1, 2, 3]).
- Literal tipa
string(npr.'tekst').
- Objekat tipa skupa (npr.set(1, 2, 3)).
- Objekat tipa torke (npr.(1, 2, 3)).
7. pitanje
Spojiti izraze sa operatorima definisane za skušove sa ekvivalentnim izrazima sa metodama definisanim za skupove za objekte a i b na programskom jeziku Python.
a & b: a.intersection(b)
a <= b: a.issubset(b)
a | b: a.union(b)
a - b: a.difference(b)
8. pitanje
Neka su date sledeće deklaracije na programskom jeziku Python:
arr = [1, 20, 8, 4, 41, 5]
msg = "Happy New Year"
year = "2o20"
name = "Input.txt"
Smatrati da datoteka input.txt ne postoji na disku.
Ispravno spojiti greške(izuzetke) i naredbe koje ih generišu.
IndexError: msg[25]
NameError: open(filename,"r")
ValueError: int(year)