28.3. Квиз - сусрети објеката на екрану¶
Питање 1.¶
def sudar_loptica(): razmak_centara = math.sqrt((x_koordinata_prvog_kruga-x_koordinata_drugog_kruga)**2 + (y_koordinata_prvog_kruga-y_koordinata_drugog_kruga)**2) return razmak_centara < 2*poluprecnik_krugova
def sudar_loptica(): razmak_centara = math.sqrt((x_koordinata_prvog_kruga-x_koordinata_drugog_kruga)**2 + (y_koordinata_prvog_kruga-y_koordinata_drugog_kruga)**2) return razmak_centara > 2*poluprecnik_krugova
def sudar_loptica(x_koordinata_prvog_kruga, x_koordinata_drugog_kruga, y_koordinata_prvog_kruga, y_koordinata_drugog_kruga): return math.sqrt((x_koordinata_prvog_kruga-x_koordinata_drugog_kruga)**2 + (y_koordinata_prvog_kruga-y_koordinata_drugog_kruga)**2)
- 1
- Тачно
- 2
- Нетачно
- 3
- Нетачно
- Ниједна
- Нетачно
Q-89: Која од следећих функција проверава да ли су се две лоптице сусреле?
Изабери тачан одговор.
Питање 2.¶
- 1
- Нетачно
- 2
- Нетачно
- 3
- Тачно
- 4
- Нетачно
Q-90: Која од следећих функција проверава да ли се круг сусреће (додирује) са било левом, било десном ивицом екрана?
(1)
.. code-block:: python
def sudar_sa_ivicom():
return x_centar_kruga - poluprecnik_kruga < 0
(2)
.. code-block:: python
def sudar_sa_ivicom():
return x_centar_kruga - poluprecnik_kruga < 0 and x_centar_kruga + poluprecnik_kruga > sirina
(3)
.. code-block:: python
def sudar_sa_ivicom():
return x_centar_kruga - poluprecnik_kruga < 0 or x_centar_kruga + poluprecnik_kruga > sirina
(4)
.. code-block:: python
def sudar_sa_ivicom():
return x_centar_kruga + poluprecnik_kruga < 0 or x_centar_kruga - poluprecnik_kruga > sirina
Изабери тачан одговор.
Питање 3.¶
- 1
- Тачно
- 2
- Нетачно
- 3
- Нетачно
- 4
- Нетачно
Q-91: Која од следећих функција проверава да ли се квадрат сусрео са горњом, односно доњом ивицом екрана?
(1)
def sudar_sa_ivicom():
return y_gornje_levo_teme < 0 or y_gornje_levo_teme + stranica_kvadrata > visina
(2)
def sudar_sa_ivicom():
return y_gornje_levo_teme - polovina_stranice < 0
(3)
def sudar_sa_ivicom():
return y_gornje_levo_teme < 0 and y_gornje_levo_teme + stranica_kvadrata > visina
(4)
def sudar_sa_ivicom():
return y_gornje_levo_teme - stranica kvadrata < 0 or y_gornje_levo_teme_ - stranica_kvadrata > visina
Изабери тачан одговор.
Питање 4.¶
- 1
- Тачно
- 2
- Нетачно
- 3
- Нетачно
- 4
- Нетачно
Q-92: Дата је функција nov_frejm, која се позива одређени број пута у секунди и анимира кретање n кругова (изостављена је иницијализација глобалних података, али треба претпоставити да су сви подаци на почетку различити). Сваки елемент листе krugovi је торка која описује један круг.
import pygame as pg
import pygamebg
(sirina, visina) = (400, 450) # otvaramo prozor
prozor = pygamebg.open_window(sirina, visina, "zadatak_novifrejm")
(x, y) = (sirina // 2, visina // 2)
(dx, dy) = (2, 2)
r = 30
def crtaj():
prozor.fill(pg.Color("white"))
pg.draw.circle(prozor, pg.Color("black"), (x, y), r)
# ??? на ово место треба да дође функција коју изаберете
pygamebg.frame_loop(100, novi_frejm)
Која од следећих функција допуњује код тако да се лоптица одбија од ивица екрана?
(1)
def novi_frejm():
global x, y, dx, dy
x += dx
y += dy
if x - r < 0 or x + r > sirina:
dx = -dx
if y - r < 0 or y + r > visina:
dy = -dy
crtaj()
(2)
def novi_frejm():
global x, y, dx, dy
x += dx
y += dy
if x + r < 0 or x - r > sirina:
dx = -dx
if y + r < 0 or y - r > visina:
dy = -dy
crtaj()
(3)
def novi_frejm():
global x, y, dx, dy
x += dx
y += dy
if x + r < 0 and x - r > sirina:
dx = -dx
if y + r < 0 and y - r > visina:
dy = -dy
crtaj()
(4)
def novi_frejm():
x += dx
y += dy
if x + r < 0 or x - r > sirina:
dx = -dx
if y + r < 0 or y - r > visina:
dy = -dy
crtaj()
Изабери тачан одговор.