U glavnom programu od korisnika uzeti podatke za n i k, a zatim simulirati igru Mastermind sa datim podacima.

Σχετικά έγγραφα
PRAVA. Prava je u prostoru određena jednom svojom tačkom i vektorom paralelnim sa tom pravom ( vektor paralelnosti).

3.1 Granična vrednost funkcije u tački

Osnovni primer. (Z, +,,, 0, 1) je komutativan prsten sa jedinicom: množenje je distributivno prema sabiranju

IZVODI ZADACI (I deo)

UNIVERZITET U NIŠU ELEKTRONSKI FAKULTET SIGNALI I SISTEMI. Zbirka zadataka

Pismeni ispit iz matematike Riješiti sistem jednačina i diskutovati rješenja sistema u zavisnosti od parametra: ( ) + 1.

DISKRETNA MATEMATIKA - PREDAVANJE 7 - Jovanka Pantović

Kontrolni zadatak (Tačka, prava, ravan, diedar, poliedar, ortogonalna projekcija), grupa A

Teorijske osnove informatike 1

( , 2. kolokvij)

Ispitivanje toka i skiciranje grafika funkcija

Verovatnoća i Statistika I deo Teorija verovatnoće (zadaci) Beleške dr Bobana Marinkovića

SISTEMI NELINEARNIH JEDNAČINA

Računarska grafika. Rasterizacija linije

MATRICE I DETERMINANTE - formule i zadaci - (Matrice i determinante) 1 / 15

Zadaci sa prethodnih prijemnih ispita iz matematike na Beogradskom univerzitetu

Apsolutno neprekidne raspodele Raspodele apsolutno neprekidnih sluqajnih promenljivih nazivaju se apsolutno neprekidnim raspodelama.

Operacije s matricama

Zavrxni ispit iz Matematiqke analize 1

FTN Novi Sad Katedra za motore i vozila. Teorija kretanja drumskih vozila Vučno-dinamičke performanse vozila: MAKSIMALNA BRZINA

Inženjerska grafika geometrijskih oblika (5. predavanje, tema1)

Strukture podataka i algoritmi 1. kolokvij 16. studenog Zadatak 1

numeričkih deskriptivnih mera.

IZRAČUNAVANJE POKAZATELJA NAČINA RADA NAČINA RADA (ISKORIŠĆENOSTI KAPACITETA, STEPENA OTVORENOSTI RADNIH MESTA I NIVOA ORGANIZOVANOSTI)

41. Jednačine koje se svode na kvadratne

Pismeni ispit iz matematike GRUPA A 1. Napisati u trigonometrijskom i eksponencijalnom obliku kompleksni broj, zatim naći 4 z.

ELEKTROTEHNIČKI ODJEL

Elementi spektralne teorije matrica

2 tg x ctg x 1 = =, cos 2x Zbog četvrtog kvadranta rješenje je: 2 ctg x

Računarska grafika. Rasterizacija linije

PARCIJALNI IZVODI I DIFERENCIJALI. Sama definicija parcijalnog izvoda i diferencijala je malo teža, mi se njome ovde nećemo baviti a vi ćete je,

M086 LA 1 M106 GRP. Tema: Baza vektorskog prostora. Koordinatni sustav. Norma. CSB nejednakost

Otpornost R u kolu naizmjenične struje

(P.I.) PRETPOSTAVKA INDUKCIJE - pretpostavimo da tvrdnja vrijedi za n = k.

Ispit održan dana i tačka A ( 3,3, 4 ) x x + 1

Iskazna logika 3. Matematička logika u računarstvu. novembar 2012

1 UPUTSTVO ZA IZRADU GRAFIČKOG RADA IZ MEHANIKE II

Algoritmi zadaci za kontrolni

5. Karakteristične funkcije

IZVODI ZADACI ( IV deo) Rešenje: Najpre ćemo logaritmovati ovu jednakost sa ln ( to beše prirodni logaritam za osnovu e) a zatim ćemo

5 Ispitivanje funkcija

18. listopada listopada / 13

KVADRATNA FUNKCIJA. Kvadratna funkcija je oblika: Kriva u ravni koja predstavlja grafik funkcije y = ax + bx + c. je parabola.

RIJEŠENI ZADACI I TEORIJA IZ

Konstruisati efikasan algoritam znači dati skup preciznih uputstava kako doći do rešenja zadatog problema Algoritmi se mogu opisivati:

Program testirati pomoću podataka iz sledeće tabele:

IspitivaƬe funkcija: 1. Oblast definisanosti funkcije (ili domen funkcije) D f

I.13. Koliki je napon između neke tačke A čiji je potencijal 5 V i referentne tačke u odnosu na koju se taj potencijal računa?

Kaskadna kompenzacija SAU

PID: Domen P je glavnoidealski [PID] akko svaki ideal u P je glavni (generisan jednim elementom; oblika ap := {ab b P }, za neko a P ).

XI dvoqas veжbi dr Vladimir Balti. 4. Stabla

KOMUTATIVNI I ASOCIJATIVNI GRUPOIDI. NEUTRALNI ELEMENT GRUPOIDA.

21. ŠKOLSKO/OPĆINSKO/GRADSKO NATJECANJE IZ GEOGRAFIJE GODINE 8. RAZRED TOČNI ODGOVORI

OBRTNA TELA. Vladimir Marinkov OBRTNA TELA VALJAK

Novi Sad god Broj 1 / 06 Veljko Milković Bulevar cara Lazara 56 Novi Sad. Izveštaj o merenju

7 Algebarske jednadžbe

Cauchyjev teorem. Postoji više dokaza ovog teorema, a najjednostvniji je uz pomoć Greenove formule: dxdy. int C i Cauchy Riemannovih uvjeta.

DRUGI KOLOKVIJUM IZ MATEMATIKE 9x + 6y + z = 1 4x 2y + z = 1 x + 2y + 3z = 2. je neprekidna za a =

MATEMATIKA Pokažite da za konjugiranje (a + bi = a bi) vrijedi. a) z=z b) z 1 z 2 = z 1 z 2 c) z 1 ± z 2 = z 1 ± z 2 d) z z= z 2

MATEMATIKA 2. Grupa 1 Rexea zadataka. Prvi pismeni kolokvijum, Dragan ori

III VEŽBA: FURIJEOVI REDOVI

INTELIGENTNO UPRAVLJANJE

Univerzitet u Nišu Građevinsko-arhitektonski fakultet. Informatika2. 4. Ciklična algoritamska struktura 5. Jednodimenzionalno polje.

Veleučilište u Rijeci Stručni studij sigurnosti na radu Akad. god. 2011/2012. Matematika. Monotonost i ekstremi. Katica Jurasić. Rijeka, 2011.

Univerzitet u Nišu, Prirodno-matematički fakultet Prijemni ispit za upis OAS Matematika

Osnovne teoreme diferencijalnog računa

OM2 V3 Ime i prezime: Index br: I SAVIJANJE SILAMA TANKOZIDNIH ŠTAPOVA

TRIGONOMETRIJSKE FUNKCIJE I I.1.

Ako prava q prolazi kroz koordinatni početak i gradi ugao φ [0, π) sa x osom tada je refleksija S φ u odnosu na tu pravu:

radni nerecenzirani materijal za predavanja R(f) = {f(x) x D}

Trigonometrija 2. Adicijske formule. Formule dvostrukog kuta Formule polovičnog kuta Pretvaranje sume(razlike u produkt i obrnuto

INTEGRALNI RAČUN. Teorije, metodike i povijest infinitezimalnih računa. Lucija Mijić 17. veljače 2011.

π π ELEKTROTEHNIČKI ODJEL i) f (x) = x 3 x 2 x + 1, a = 1, b = 1;

Ministarstvo prosvete i sporta Republike Srbije Druxtvo matematiqara Srbije OPXTINSKO TAKMIQENjE IZ MATEMATIKE Prvi razred A kategorija

Република Србија МИНИСТАРСТВО ПРОСВЕТЕ, НАУКЕ И ТЕХНОЛОШКОГ РАЗВОЈА ЗАВОД ЗА ВРЕДНОВАЊЕ КВАЛИТЕТА ОБРАЗОВАЊА И ВАСПИТАЊА МАТЕМАТИКА ТЕСТ

Linearna algebra 2 prvi kolokvij,

RAČUNSKE VEŽBE IZ PREDMETA POLUPROVODNIČKE KOMPONENTE (IV semestar modul EKM) IV deo. Miloš Marjanović

1 Afina geometrija. 1.1 Afini prostor. Definicija 1.1. Pod afinim prostorom nad poljem K podrazumevamo. A - skup taqaka

Zadaci iz trigonometrije za seminar

Elektrotehnički fakultet univerziteta u Beogradu 17.maj Odsek za Softversko inžinjerstvo

Geometrija (I smer) deo 1: Vektori

- pravac n je zadan s točkom T(2,0) i koeficijentom smjera k=2. (30 bodova)

KVADRATNA FUNKCIJA. Kvadratna funkcija je oblika: Kriva u ravni koja predstavlja grafik funkcije y = ax + bx + c. je parabola.

Ministarstvo prosvete i sporta Republike Srbije Druxtvo matematiqara Srbije Prvi razred A kategorija

Mašinsko učenje. Regresija.

Klasifikacija blizu Kelerovih mnogostrukosti. konstantne holomorfne sekcione krivine. Kelerove. mnogostrukosti. blizu Kelerove.

radni nerecenzirani materijal za predavanja

APROKSIMACIJA FUNKCIJA

( ) ( ) 2 UNIVERZITET U ZENICI POLITEHNIČKI FAKULTET. Zadaci za pripremu polaganja kvalifikacionog ispita iz Matematike. 1. Riješiti jednačine: 4

MATEMATIKA 1 8. domaća zadaća: RADIJVEKTORI. ALGEBARSKE OPERACIJE S RADIJVEKTORIMA. LINEARNA (NE)ZAVISNOST SKUPA RADIJVEKTORA.

I Pismeni ispit iz matematike 1 I

IZVODI ZADACI (I deo)

VJEROJATNOST I STATISTIKA Popravni kolokvij - 1. rujna 2016.

a M a A. Može se pokazati da je supremum (ako postoji) jedinstven pa uvodimo oznaku sup A.

MEHANIKA FLUIDA. Isticanje kroz otvore sa promenljivim nivoom tečnosti

Matematička analiza 1 dodatni zadaci

2log. se zove numerus (logaritmand), je osnova (baza) log. log. log =

МАТРИЧНА АНАЛИЗА КОНСТРУКЦИЈА

Sistemi veštačke inteligencije primer 1

Pravilo 1. Svaki tip entiteta ER modela postaje relaciona šema sa istim imenom.

Transcript:

1. (JAVA) Kreirati klasu Slagalica koja omogućava zadavanje tajne reči, slučajno permutovanje znakova tajne reči, kao i dve operacije zameni(i, j), rotiraj(i, j). Operacija zameni(i, j) menja mesta i tom i j tom karakteru u transformisanoj reči, a rotiraj(i, j) rotira sve karaktere od i tog do j tog u desno ako je i < j, odnosno u levo ako je i > j. U glavnom programu omogućiti igranje sledeće igre kompjuter učitava niz reči iz datoteke recnik.dat, odabira slučajno jednu od njih i permutuje joj karaktere. Posle toga prikazuje permutovanu reč korisniku i traži od njega komande. Posle svake komande treba odštampati promenjenu reč. Igra se završava kada igrač pogodi traženu reč ili posle 10 pokušaja. 2. (JAVA I C++) Kreirati klasu KompleksniBroj koja omogudava rad sa kompleksnim brojevima. Klasa bi trebalo da ima: a. podatke re i im, za realni i imaginarni deo kompleksnog broja; b. konstruktor sa dva parametra koji postavlja vrednosti za realni i imaginarni deo kompleksnog broja; c. konstruktor bez parametara koji postavlja vrednost kompleksnog broja na 0; d. odgovarajude getere i setere; e. javni metod moduo() koji kao rezultat vrada moduo kompleksnog broja; f. javne metode kojima se izvode osnovne operacije sa kompleksnim brojevima (sabiranje, oduzimanje, množenje, stepenovanje, deljenje). 3. (JAVA) Kreirati klasu Razlomak koja omogudava rad sa racionalnim brojevima. Klasa bi trebalo da ima: a. podatke br i im, za brojilac i imenilac razlomka; b. privatni metod skrati() koji dovodi razlomak na neskrativi oblik. Može se definisati i privatni metod int nzd(int a, int b) koji određuje najvedi zajednički delilac dva cela broja; c. konstruktor sa dva parametra koji postavlja vrednosti za brojilac i imenilac. Voditi računa o tome da imenilac ne može biti 0; d. konstruktor bez parametara koji postavlja vrednost kompleksnog broja na 0. U tom slučaju je imenilac jednak 1; e. odgovarajude getere i setere; f. javne metode kojima se izvode osnovne operacije sa razlomcima (sabiranje, oduzimanje, množenje, stepenovanje, deljenje). 4. Kreirati klasu Automobil koja ima: a. celobrojne podatke trenutnabrzina i maksimalnabrzina koji predstavljaju trenutnu i maksimalnu brzinu automobila u km/h. Trenutna brzina automobila ne može biti veda od maksimalne; b. realni podatak predjeniput koji određuje koliko kilometara je automobil prešao;

c. konstruktor sa jednim celobrojnim parametrom koji predstavlja maksimalnu brzinu automobila. Ona ne može biti negativna. Trenutna brzina i pređeni put se postavljaju na 0; d. javni metod void ubrzaj(int a) koji povedava trenutnu brzinu za a km/h, ali ne preko maksimalne brzine; e. javni metod void uspori(int a) koji smanjuje trenutnu brzinu za a km/h, ali ne ispod 0; f. javni metod void vozi(double t) koji na promenljivu predjeniput dodaje put koji auto pređe za t časova, vozedi trenutnom brzinom; g. odgovarajude getere i setere; h. javni metod int ucitajkomande(char * filename), odnosno, u Javi, int ucitajkomande(string filename) koji učitava i izvršava komande iz tekstualne datoteke čije je ime dato. Metod vrada 0 ako se pri čitanju desila neka greška, a inače 1. Komande su oblika UBRZAJ A, USPORI A, VOZI T i svaka je data u po jednom redu. U prvom redu datoteke se nalazi broj komandi. 5. (C++) Kreirati klasu Robot koja u svakom trenutku pamti poziciju robota u ravni. Klasa bi trebalo da ima metode kreni(int t), ubrzaj(int v), uspori(int v), levo(), levo(int x), desno(), desno(int x). Robot se na početku nalazi u koordinatnom početku, a početni smer je u pozitivnom smeru x ose. Trebalo bi omoguditi korisniku da pri kreiranju objekta zada početne koordinate robota, kao i početni smer. Brzina robota se meri u metrima u sekundi, a početna brzina je 0. Metod kreni(t) pokrede robota u trenutnom smeru t sekundi. Metod ubrzaj(v) (uspori(v)) povedava (smanjuje) brzinu robota za v metara u sekundi. Brzina robota nikada ne sme biti manja od 0 m/s, a ni veda od 30 m/s. Metodi levo(x ) desno(x) menjaju smer kretanja robota za x stepeni u odgovarajudu stranu. Metodi levo() i desno() menjaju smer kretanja za 90 stepeni. Napisati metode pozicijax() i pozicijay() koji daju x, odnosno y koordinatu trenutne pozicije. Napisati metod ucitajkomande(string filename) koji iz tekstualne datoteke sa navedenim imenom učitava komande za robota i izvršava ih. U svakom redu datoteke se nalazi po jedna komanda. Komande mogu biti KRENI #, UBRZAJ #, USPORI #, LEVO, LEVO #, DESNO, DESNO # (# označava prirodan broj). U glavnom programu učitati početne koordinate robota, a zatim izvršiti spisak komandi iz datoteke robot.in. Na kraju odštampati rastojanje robota od početne tačke. 6. (JAVA) Igra Mastermind se sastoji u tome da kompjuter slučajno generiše niz od n znakova koje bira od k vrsta znakova. Igrač zatim pogađa kombinaciju koju je kompjuter zamislio, a kompjuter posle svako pogađanja daje izveštaj koliko je znakova pogođeno, kao i koliko je znakova na svom mestu. Kreirati klasu Mastermind kojoj se može zadati broj različitih znakova k ( 3 k 8 ), kao i dužina niza koji se generiše n ( 4 n 10 ). Definisati metod generisi() koji generiše

slučajni niz znakova, kao i metod proba(...) čiji je parametar niz znakova (znak može biti predstavljen cifrom ili posebnom klasom bolje rešenje), a čiji je rezultat klasa (ili struktura) koja sadrži podatke o broju pogođenih znakova i broju znakova koji su na svom mestu. U glavnom programu od korisnika uzeti podatke za n i k, a zatim simulirati igru Mastermind sa datim podacima. 7. Kreirati klasu VelikiInt koja omogudava rad sa velikim celim brojevima. Definisati metode za sabiranje, oduzimanje, množenje, celobrojno deljenje i izračunavanje ostatka pri deljenju dva velika cela broja. Takođe, napisati metode za ove osnovne operacije kada je drugi operand običan ceo broj. Rezultat svakog od ovih metoda je VelikiInt. Napisati konstruktor bez parametara koji postavlja broj na vrednost 0, konstruktor sa celobrojnim parametrom, kao i konstruktore kojima su parametri string, odnosno niz cifara. 8. Kreirati klasu Soba koja predstavlja hotelsku sobu. Bitni podaci za hotelsku sobu su broj sobe, broj kreveta, cena, kao i to da li je soba zauzeta ili ne. Kreirati klasu Hotel koja omogudava unošenje podataka o sobama u hotelu (sa tastature ili iz datoteke). Definisati metod pronadji(int n) koja proverava da li u hotelu postoji soba u koju se može smestiti n osoba, pa ako postoji, kao rezultat daje broj najjeftinije sobe u koju taj broj osoba može da se smesti. Ako ima više takvih soba, rezultat treba da bude broj sobe koja ima najmanji broj kreveta, a ako i takvih ima više, onda od njih vratiti najmanji broj sobe. Ukoliko takva soba ne postoji, rezultat je 1. Napisati i metod zarada(int n) koji izračunava kolika je ukupna zarada od n tokrevetnih soba u hotelu. Ako je n 0, onda se računaju sve sobe, bez obzira na broj kreveta. Naravno, računaju se samo zauzete sobe. 9. Kreirati klasu TesterLozinke koja proverava da li dati string prihvatljiv za lozinku. String je prihvatljiv za lozinku ukoliko: a. ima bar 7 znakova, b. sadrži i velika i mala slova, c. sadrži bar jednu cifru. d. Klasa bi trebalo da omogući zadavanje stringa, bilo preko konstruktora ili setera, kao i da ima javni metod prihvatljiv(string s) koji kao rezultat daje jedan od stringova: e. u redu, ukoliko su svi uslovi zadovoljeni, f. kratka lozinka, ukoliko nije zadovoljen uslov a), g. lozinka mora da sadrzi bar jedno malo i bar jedno veliko slovo, ukoliko nije zadovoljen uslov b) (a jeste a)), h. lozinka mora da sadrzi bar jednu cifru, ukoliko nije zadovoljen uslov c) (a jesu a) i b)). 10. Kreirati klasu Kutija koja ima polja visina, sirina i duzina. Napisati odgovarajuće getere i setere, kao i konstruktor sa 3 parametra.

Napisati javni metod stajeu(kutija k) koji proverava da li kutija može da stane u kutiju k. Jedna kutija može da stane u drugu, ako joj je osnova manja (po širini i dužini) od osnove druge kutije (s tim što kutije mogu da se rotiraju oko vertikalne ose), a visina joj je manja od visine druge kutije. Računati da su strane kutija uvek paralelne. Kreirati klasu NizKutija koja sadrži polje kutije koje predstavlja niz kutija. U ovoj klasi napisati metod proveri() koji proverava da li je moguće rasporediti kutije tako da svaka staje u sledeću. 11. Kreirati klasu BinaryHeap koja kao podatak sadrži niz celih brojeva i koja omogućava rad sa strukturom binarni hip. Klasa bi trebalo da ima konstruktor i javne metode count(), get() i add(int x). Objašnjenje: Binarni hip je struktura podataka koja se predstavlja binarnim stablom i ima osobinu da je svaki element vedi (za maxheap) od svih elemenata koji se u stablu nalaze ispod njega. Na slici je dat primer jednog binarnog hipa (slika levo). Ovakva struktura se može predstaviti i nizom, tako što za i ti element niza postavimo da je element levo od njega onaj sa indeksom (2i + 1), a desno element sa indeksom (2i + 2) (slika desno). Element se u hip dodaje tako što se stavi na kraj niza, a onda se zamenjuje sa elementom iznad sebe, sve dok je veći od njega. Ovo bi trebalo da radi metod add(int x). Metod get() bi trebalo da kao rezultat vrati maksimalni elemen hipa (null ako je hip prazan), a zatim da taj element obriše iz hipa. Prvi element se briše tako što se na njegovo mesto dovede najmanji element, a zatim se taj najmanji element pomera na dole tako što se zamenjuje sa većim od dva elementa koji su direktno ispod njega, sve dok ne bude veći od oba elementa koji su ispod njega. Metod count() bi trebalo da daje trenutni broj elemenata u hipu. 100 19 36 17 3 25 1 2 7 0 1 2 3 4 5 6 7 8

12. Napisati klasu Vektor za rad sa vektorima u ravni; vektor je odredjen svojom pocetnom i krajnjom tackom. Definisati: konstruktor na osnovu dve zadate tacke (pocetna i krajnja tacka vektora), konstruktor na osnovu jedne zadate tacke (pocetna tacka je koordinatni pocetak, a krajnja tacka vektora je zadata), konstruktor kopije i metode za sabiranje i oduzimanje vektora (rezultat je vektor). Takodje implementirati i metod za translaciju vektora u zadatu tacku, metod za translaciju vektora za zadati vektor, metod koji nalazi centralno simetricni vektor datom vektoru u odnosu na zadatu tacku i metod za rotaciju vektora za dati ugao. U drugoj klasi implementirati main() funkciju koja sa standardnog ulaza ucitava vektor i zatim ucitava tacku u koju transliramo taj vektor, a zatim i ugao za koji ga dalje rotiramo; onda ucitavamo drugi vektor, pa tacku u odnosu na koju nalazimo centralno simetricni vektor tom vektoru. Na kraju ispisujemo zbir i razliku ovako dobijenih vektora. 13. Написати следеће класе (класе опремити оним конструкторима и деструктором који су потребни за безбедно коришћење класа): Оцена садржи цео број у опсегу од 5 до 10. Вредности изван опсега приликом стварања промене се у најближу прихватљиву вредност. Може да се дохвати вредност оцене бројчано и словима као и да се оцена испише на главном излазу када се пишу оба облика оцене (на пример: 10(deset)). Испит садржи шифру испита од највише 6 знакова и оцену. Може да се дохвати шифра испита и оцена и да се испит испише на главном излазу у облику "шифра:оцена". Студент има име (текст произвољне дужине), број индекса (дугачак цео број по шеми ggggrrrr, где су g и r цифре године уписа и регистарског броја) и низ испита задатог капацитета (подразумевано 40). Ствара се без иједног испита после чега испити могу да се додају један по један. Повратна вредност при додавању испита показује успех додавања (тј. да ли је било места у низу испита). Не сме да се прави копија студента. Може да се израчуна средња вредност оцена положених испита и да се студент испише на главном излазу у облику "име[годуп/регбр:сроцена]". Написати на језику C++ програм који направи једног студента, додаје му три испита и испише га на главном излазу. Користити само константне податке (не треба ништа учитавати с главног улаза). 14. Саставити на језику C++ следеће класе (класе опремити оним конструкторима и (25 поена) Датум се задаје помоћу броја дана, месеца и године. Може да се провери да ли три цела броја представљају исправан датум, да се ствара датум на основу три цела броја (подразумевано 7.11.2005. погрешан датум прекида програм), да се дохватају делови датума, да се датум упореди с другим датумом (резултат је <0, =0 или >0, зависно од тога да ли је текући датум пре, једнак или

после задатог датума), да се датум прочита са главног улаза и да се датум испише на главном излазу. (25 поена) Листа датума се ствара празна, после чега се датуми додају један по један на крај листе. Може да се одреди дужина листе, да се дохвати најкаснији датум у листи и да се листа испише на главном излазу. (20 поена) Написати на језику C++ главни програм који читајући датуме с главног улаза направи листу датума (читање се завршава првим неисправним датумом), испише на главном излазу добијену листу као и најкаснији датум и понавља претходне кораке све док не прочита празну листу. 15. Саставити на језику JAVA следеће класе (класе опремити оним конструкторима и (25 поена) Датум се задаје помоћу броја дана, месеца и године. Може да се провери да ли три цела броја представљају исправан датум, да се ствара датум на основу три цела броја (подразумевано 7.11.2005. погрешан датум прекида програм), да се дохватају делови датума, да се датум упореди с другим датумом (резултат је <0, =0 или >0, зависно од тога да ли је текући датум пре, једнак или после задатог датума), да се датум прочита са главног улаза и да се датум испише на главном излазу. (25 поена) Листа датума се ствара празна, после чега се датуми додају један по један на крај листе. Може да се одреди дужина листе, да се дохвати најкаснији датум у листи и да се листа испише на главном излазу. (20 поена) Написати на језику JAVA главни програм који читајући датуме с главног улаза направи листу датума (читање се завршава првим неисправним датумом), испише на главном излазу добијену листу као и најкаснији датум и понавља претходне кораке све док не прочита празну листу. 16. Саставити на језику C++ следеће класе (класе опремити оним конструкторима и (20 поена) Материјална тачка у простору се задаје помоћу реалне масе (подразумевано 1) и три реалне координате (подразумевано (0,0,0)). Може да се одреди растојање (r) до друге тачке, да се израчуна привлачна сила између тачке и задате друге тачке (F=γ m 1 m 2 /r 2, γ=6,67 10 11 ) и да се тачка испише на главном излазу. (30 поена) Низ материјалних тачака се ствара празан задатог почетног капацитета (подразумевано 5), после чега се тачке додају једнa по једнa на крај низа. Aко се низ препуни, капацитет му се повећа за 5. Може да се дохвати број тачака у низу, да се дохвати тачка у низу која највише привлачи задату тачку и да се низ испише на главном излазу. (20 поена) Написати на језику C++ програм који читајући материјалне тачке с главног улаза направи низ материјалних тачака (читање се завршава уносом негативне масе),

испише на главном излазу добијени низ као и тачку која највише привлачи тачку јединичне масе у координатном почетку и понавља претходне кораке све док не прочита празан низ (низ дужине 0). 17. Саставити на језику JAVA следеће класе (класе опремити оним конструкторима и (20 поена) Материјална тачка у простору се задаје помоћу реалне масе (подразумевано 1) и три реалне координате (подразумевано (0,0,0)). Може да се одреди растојање (r) до друге тачке, да се израчуна привлачна сила између тачке и задате друге тачке (F=γ m 1 m 2 /r 2, γ=6,67 10 11 ) и да се тачка испише на главном излазу. (30 поена) Низ материјалних тачака се ствара празан задатог почетног капацитета (подразумевано 5), после чега се тачке додају једнa по једнa на крај низа. Aко се низ препуни, капацитет му се повећа за 5. Може да се дохвати број тачака у низу, да се дохвати тачка у низу која највише привлачи задату тачку и да се низ испише на главном излазу. (20 поена) Написати на језику JAVA програм који читајући материјалне тачке с главног улаза направи низ материјалних тачака (читање се завршава уносом негативне масе), испише на главном излазу добијени низ као и тачку која највише привлачи тачку јединичне масе у координатном почетку и понавља претходне кораке све док не прочита празан низ (низ дужине 0). 18. Realizovati klasu trougao koja će kao podatke članove imati tri tačke koje predstavljaju objekte klase tačka. Klasa tačka treba da ima odgovarajuće konstruktore i destruktore kao i funkcije za računanje rastojanja dvije tačke i ugla između prave koju čine dvije tačke i x ose. Klasa trougao treba da posjeduje odgovarajuće konstruktore, destruktore kao i funkciju članicu koja će za tri date tačke provjeravati da li čine trougao ili su to tačke sa jedne prave i druga funkcija članica provjerava da li je trougao, na ovaj način zadat, jednakokraki. Napisati i glavni program u kojem će se unositi koordinate za željene tačke, inicijalizovati potrebni objekti i provjeravati da li date tačke čine trougao i da li je isti jednakokraki. 19. Написати на језику C++ следеће класе (класе опремити оним конструкторима и Оцена садржи цео број у опсегу од 5 до 10. Вредности изван опсега приликом стварања промене се у најближу прихватљиву вредност. Може да се дохвати вредност оцене бројчано и словима као и да се оцена испише на главном излазу када се пишу оба облика оцене (на пример: 10(deset)).

Испит садржи шифру испита од највише 6 знакова и оцену. Може да се дохвати шифра испита и оцена и да се испит испише на главном излазу у облику "шифра:оцена". Студент има име (текст произвољне дужине), број индекса (дугачак цео број по шеми ggggrrrr, где су g и r цифре године уписа и регистарског броја) и низ испита задатог капацитета (подразумевано 40). Ствара се без иједног испита после чега испити могу да се додају један по један. Повратна вредност при додавању испита показује успех додавања (тј. да ли је било места у низу испита). Не сме да се прави копија студента. Може да се израчуна средња вредност оцена положених испита и да се студент испише на главном излазу у облику "име[годуп/регбр:сроцена]". Написати на језику C++ програм који направи једног студента, додаје му три испита и испише га на главном излазу. Користити само константне податке (не треба ништа учитавати с главног улаза).