Osnove programiranja - Java
Zadatak za praktičan rad
Fakultet za informatiku i računarstvo, Univerzitet Singidunum
Grupa D
Otvorite novi projekat u NetBeans razvojnom okruženju i nazovite ga JGD_BROJ_INDEKSA, npr. JGD_2008213514.
Obavezno poštujte konvenciju imenovanja promenljivih, metoda, klasa i drugih elemenata izvornog koda programa.
Izvorni kôd ne sme da ima sintaksne greške (podvučeno crveno) kada se predaje za ocenjivanje na kraju ispita.
OBAVEZNO pročitajte instrukcije za slanje rada na kraju ovog dokumenta! Ni slučajno ne preskačite taj korak!
1.
Napraviti klasu Akcija koja ima članove podatke za čuvanje informacija o oznaci, ceni, procentu promene i obimu prometa akcije na
današnji dan. Samostalno odrediti tipove. Napraviti getter metode i konstruktor koji uzima argumente za vrednosti svih članova.
2.
U klasi Akcija napisati metod pozeljnost koji vraća realnu vrednost, koji ne uzima argumente, a vrednost dobija formulom:
𝑝𝑜𝑧𝑒𝑙𝑗𝑛𝑜𝑠𝑡 =
3.
Za procente promene manje od 0, vrednost 𝑘 je 10
Za procente promene od 0 do 10, vrednost 𝑘 je 5
Za procente promene od 10 do 50, vrednost 𝑘 je 1
Za procente promene veće od 50, vrednost 𝑘 je 0.5
U klasi Akcija napisati metod toString koji vraća string u dole prikazanom formatu. Striktno se pridržavajte dole prikazanog formata.
Kote sa širinama su prikazane kao pomoć u određivanju širina polja.
12 karaktera
Oznaka:
Cena:
Promena:
4.
√𝑜𝑏𝑖𝑚 𝑝𝑟𝑜𝑚𝑒𝑡𝑎 ∙ 𝑝𝑟𝑜𝑐𝑒𝑛𝑎𝑡 𝑝𝑟𝑜𝑚𝑒𝑛𝑒
100 ∙ 𝑘
20 karaktera
KMBNPB
17 karaktera
Obim promenta:
1197 RSD/HOV Pozeljnost HOV:
+2.31%
19 karaktera
458324 HOV
3.1277
U klasi Akcija napisati statički metod load koji uzima jedan argument tipa String, a kao rezultat vraća listu objekata klase Akcija.
Ovaj metod treba da pročita sadržaj datoteke čije ime je dato kao argument i da na osnovu podataka iz datoteke formira listu
objekata klase Akcija koju na kraju treba da vrati kao rezultat.
Podaci su upisani u formatu prikazanom ispod.
┘ označava prelazak u novi red teksta u datoteci.
KMBNPB 1197 2.31 458324┘
-
Prvi podatak u redu je oznaka akcije.
Drugi podatak u redu je cena akcije.
Treći podatak u redu je procenat promene.
Poslednji podatak do kraja reda je obim prometa.
Listu akcija treba vratiti poređanu u rastući poredak prema ceni akcije u opadajućem poretku.
5. U osnovnoj klasi programa, u main metodu, pozivom adekvatnog metoda dopremiti listu objekata klase Akcija sa podacima
učitanim iz datoteke čije ime je "akcije.txt", a zatim proći kroz sve elemente liste i obrisati one za koje metod pozeljnost vraća
vrednost manju od srednje vrednosti poželjnosti svih akcija.
6. U datoteku pod nazivom "izlaz_M_N.txt" sačuvati podatke o svim elementima liste koji su u njoj ostali nakon filtriranja, gde je M
ukupan broj akcija koji su učitani iz datoteke, a N je broj akcija koji su upisani u datoteku nakon obavljenog filtriranja, npr.
"izlaz_10_3.txt" ako je bilo učitano 10 akcija, a nakon filtriranja je ostalo 3 čiji podaci su upisani u datoteku. Podaci o akcijama
treba da budu upisani u formatu u kojem ih prikazuje metod toString klase Akcija.
NAČIN PREDAJE RADA - OBAVEZNO PROČITAJTE OVAJ DEO I POSTPUNITE TAČNO PREMA OVOM UPUTSTVU
Vodite računa da su sve datoteke sačuvane ( File -> Save ALL ), a zatim kompletan projekat izvezite u ZIP arhivu direktno iz NetBeans
pomoću opcije ( File -> Export Project -> To ZIP... ) i za čuvanje odaberite kao lokaciju Desktop ili ručno, tako što ćete ceo direktorijumu
projekta arhivirati u ZIP arhivu ( desni klik na direktorijum > Send To > Compressed (zipped) folder ). Potvrdite da je napravljena ZIP
arhiva imenovana kao po šablonu sa početna zadatka, npr. JGD_2008213514.
Otvorite portal za slanje studentskih radova na linku zadatak.singidunum.ac.rs, prijavite se sa svojim brojem indeksa i JMBG i u
aktivnost pod imenom "Osnove programiranja - Java - Smer IR - M. Tair" pošaljite zapakovanu ZIP arhivu projekta.
Ako ne iskopirate svoj projekat pod navedenu aktivnost preko platforme nećete moći naknadno da predate svoj rad!
Radovi koji nisu poslati na traženu lokaciju neće biti pregledani. Radove ne možete poslati elektronskom poštom. Tako
poslati zadaci će biti zanemareni, jer je neophodno da se zadaci pošalju prema ovim navedenim instrukcijama!