IEP/K1 2024

Izvor: SI Wiki
< ИЕП
Datum izmene: 20. mart 2024. u 18:21; autor: Aleksa (razgovor | doprinosi) (Нова страница: {{tocright}} {{нерешено}} '''Први колоквијум 2024. године''' одржан је 18. марта 2024 и трајао је 90 минута. == Поставка == Компанија својим софтвером помаже у продаји карата за догађајаје који се организују у неким објектима. За догађај се евидентира датум, а догађај може би…)
(razl) ← Starija izmena | Trenutna verzija (razl) | Novija izmena → (razl)
Pređi na navigaciju Pređi na pretragu
Ovaj rok nije rešen. Pomozite SI Wiki tako što ćete ga rešiti.

Prvi kolokvijum 2024. godine održan je 18. marta 2024 i trajao je 90 minuta.

Postavka

Kompanija svojim softverom pomaže u prodaji karata za događajaje koji se organizuju u nekim objektima. Za događaj se evidentira datum, a događaj može biti otkazan iz nekog razloga. Događaja ima osnovu cenu. Objekat se sastoji od sektora koji su podeljeni u redove. Za svaki red zadaje se broj mesta u tom redu. Sistem funkcioniše tako što se za svaki događaj generišu ulaznice automatski za svaki sektor, svaki red i unutar reda za onoliko mesta koliko ima u njemu i te karte postaju važeće za događaj. Kupovina karata je moguća na dan događaja, kojom prilikom se ne evidentira ko je kupio kartu. Registrovani korisnici mogu kupiti kartu i ranije, pri čemu oni mogu dobiti popust u odnosu na ranije kupljeni broj karata. Jedan korisnik može kupiti najviše 3 karte po (vezanom) događaju. Događaju mogu biti vezani u lancu, pri čemu se ulaznice mogu kupiti samo pre početka prvog događaja, a korisniku se tom prilikom nudi kupovina za sve događaje u lancu. Zvanična cena ulaznica se računa tako što se osnova cena pomnoži

OBJEKAT(SifO,Naziv,…)
SEKTOR(SifS,Oznaka,BrojRedova,FaktorS)
RED(SifR,BrojReda,BrojSedista,FaktorR,SifS)
DOGADJAJ(SifD,Naziv,OsnovnaCena,…)
DOGADJAJ_OTKAZAN(SifD,Razlog)
ULAZNICA(SifU,SedisteBr,BrojReda,ZvacnicnaCena)
KUPAC(SifK,Ime)
POVEZANI(SifDa,SifDb)
KUPIO(SifU,SifK,Cena)
VAZI(SifU,SifD)
POPUST(BrojKarata,Popust)

Razlog: I - otkazao izvođač, O - otkazao organizator
  1. Navesti po jedan primer svakog dokumenta ukoliko bi se za potrebe navedene evidencije koristila baza podataka zasnovana na dokumentima (mongoDB), ali tako da model iskoristi sve prednosti nerelacionog modela podataka.
  2. Sastaviti skript koji koristeći funkciju za agregaciju (aggregation framework) vraća šifre i nazive onih događaja koje imaju prodatih preko 400 ulaznica sa popustom.
  3. Sastaviti Map/Reduce posao koji za svaki datum za koji se odražava bar jedan događaj vraća informaciju o procentu otkazanih događaja.

1. zadatak

2. zadatak

3. zadatak

Testiranje