Priprava na 2. kolokvij
Navodilo
Preden oddaš domačo nalogo, moraš obvezno preizkusiti, ali
pravilno deluje.
Naloge
V datoteki so shranjeni rezultati izpita:
- prva vrstica je naslov izpita,
- druga vrstica vsebuje datum, ko so študenti pisali izpit,
- preostale vrstice vsebujejo rezultate, vsaka vrstica vsebuje rezultate o enem študentu. Polja so ločena s presledki in so:
- prvo polje je vpisna številka,
- drugo polje pa vsebuje število doseženih točk.
| rezultati.txt |
|---|
Izpit iz računalnistva (PRA) 15.6.2005 18000395 50 27004396 50 27004695 30 27004703 70 27004712 80 |
Naloga 1
Napiši program
RazdeliRezultate, ki z ukazne
vrstice sprejme imena vhodne in dveh izhodnih datotek.
Vhodna datoteka vsebuje rezultate izpita, v prvo izhodno
datoteko zapišemo rezultate študentov, katerih vpisna
številka se začne s števko 2, v drugo datoteko pa rezultate
preostalih študentov. Namig: za odločitev v katero datoteko
bomo prebrano vrstico zapisali torej zadošča, da preverimo
prvi znak!
Če program poženemo na vhodni datoteki
se naredita naslednji izhodni datoteki
rezultati.txt,
> java RazdeliRezultate rezultati.txt rezultati_mat.txt rezultati_drugi.txt |
| rezultati_mat.txt | |
|---|---|
1 2 3 4 5 6 7 | Izpit iz računalnistva (PRA) 15.6.2005 27004396 50 27004695 30 27004703 70 27004712 80 |
| rezultati_drugi.txt | |
|---|---|
1 2 3 4 5 | rezultati_drugi.txt Izpit iz računalnistva (PRA) 15.6.2005 18000395 50 |
Naloga 2
Napiši program
IzpisiPozitivne, ki z ukazne vrstice sprejme
imeni vhodne in izhodne datoteke ter celo število.
Vhodna datoteka vsebuje rezultate izpita, v izhodno datoteko pa zapišemo
rezultate študentov, ki so izpit opravili.
Število točk, potrebnih za pozitivno oceno, je tretji podatek v ukazni vrstici.
Na koncu eno vrstico izpustimo, v zadnjo vrstico pa zapišemo:
"Ostali kandidati izpita niso opravili."
Če program poženemo na vhodni datoteki
se naredi izhodna datoteka
rezultati.txt,
> java RazdeliRezultate rezultati.txt pozitivni.txt 50 |
| pozitivni.txt |
|---|
Izpit iz računalnistva (PRA) 15.6.2005 18000395 50 27004396 50 27004703 70 27004712 80 Ostali kandidati izpita niso opravili. |
Naloga 3
Sestavi statično metodo
public static void
obrni_datoteko(String ime1, String ime2), ki sprejme
imeni vhodne in izhodne datoteke in podatke iz vhodne
datoteke zapiše v izhodno datoteko v obratnem vrstnem redu.
Rešitvi dodaj tudi glavno metodo
main, v kateri
preizkusiš delovanje metode obrni_datoteko.
Namig
Podatke iz vhodne datoteke preberemo v vektor in jih nato
zapišemo v izhodno datoteko
Naloga 4
Sestavi razred
Cas, s katerim predstavimo čas
izražen v minutah in sekundah. Razredu dodaj ustrezni
konstruktor in metodo toString().Naloga 5
Sestavi razred
Pesem, s katerim predstavimo pesem
na zgoščenki. Podatki o pesmi so: naslov, ime izvajalca in
dolžina pesmi (ki naj bo tipa Cas). Razredu dodaj
ustrezni konstruktor in metodo toString().Naloga 6
Sestavi razred
Zgoscenka, s katerim predstavimo
vsebino zgoščenke (CD-ja). Podatki o zgoščenki so: naslov
zgoščenke in podatki o pesmih na zgošenki. Razredu dodaj
ustrezni konstruktor in metodo toString().
Pesmi na zgoščenki lahko predstaviš kot tabelo objektov tipa
Pesem, ali kot Vector, ali kot
Seznam. Sam se odloči, katera možnost je najboljša,
pri tem pa upoštevaj, da je treba sestaviti še metode iz
naslednjega odstavka.
Razredu
Zgoscenka dodaj še naslednje objektne
metode:
void dodajPesem(Pesem p), ki doda pesempv tabelo/vektor/seznam pesmi.int steviloPesmi(), ki vrne število pesmi na zgoščenki,boolea istiIzvajalec(), ki vrnetrue, če vse pesmi na zgoščenki izvaja isti izvajalec.
Vse metode natančno preizkusi in napiši še program
TestZgoscenka, iz katerega je razvidno, da tvoja
rešitev deluje.