Sunteți pe pagina 1din 2

Proiect: E-Magazin

Un magazin care vinde articole de birotica are urmatoarele tipuri de articole: imprimante,
copiatoare si calculatoare. Fiecare articol are un cod numeric si un preţ unitar, la care se adauga
un comision de 10% pe care-l percepe magazinul pentru toate articolele, indiferent de tipul
articolului vandut. In plus, magazinul percepe un TVA diferentiat in functie de tipul articolului
vandut. Presupunem ca lista TVA-urilor aplicate este memorata in fisierul “tva.txt” cu urmatorul
continut:
imprimanta 15%
calculator 10%
copiator 20%
Implementand ierarhia de clase de mai jos, să se scrie o clasă Test care primind o serie de articole
de birotica calculează şi afişează noul lor pret. De exemplu, daca o imprimanta, avand codul 1245,
vine de la producator cu pretul de 3 milioane lei, programul vostru ar trebui sa afiseze urmatorul
mesaj: Imprimanta, cu codul: 1245 şi preţul final: 3750000 lei.

ArticolBirotica
cod : int
$ procentComision : int
pretUnitar : long

ArticolBirotica(cod : long, pretUnitar : long)


<<static>> setComision(procent : int) : void
calculeazaPretVanzare() : long
toString() : String

Imprimanta Copiator Calculator


$ TVA : int $ TVA : int $ TVA : int

Imprimanta(cod : long, pretUnitar : long) Copiator(cod : int, pretUnitar : long) Calculator(cod : int, pretUnitar : long)
<<static>> setTVA(tva : int) <<static>> setTVA(tva : int) : void <<static>> setTVA(tva : int)

Dupa cum se observa, clasa ArticolBirotica este abstracta, avand metoda abstracta
calculeazaPretVanzare.
Programul va furniza o interfaţă grafică ca cea din figura următoare.

Utilizatorul va alege un tip de articol, dupa care va introduce pretul unitar al acestuia. Acţionarea
butonului “Calculeaza pret vanzare” determină afişarea noului preţ cu ajutorul metodei
calculeazaPretVanzare().
Tipurile de articole vor fi memorate într-o colectie ce permite căutarea rapidă a unui tip de articol,
in vederea obţinerii pretului său unitar. Cand utilizatorul închide fereastra “Articole de birotica”,
continutul colectiei va fi memorat în fisierul “articole.txt”.

Cerințele proiectului:

1. Sa se implementeze in Java aplicatia E-Magazin.


2. Aplicatia trebuie sa indeplineasca toate functiunile specificate in descrierea problemei.
3. Pentru realizarea interfetelor grafice ale aplicatiei va fi folosita tehnologia Swing.
4. Pentru realizarea interfetelor grafice ale aplicatiei nu vor fi folosite programe software care
faciliteaza acest lucru.

S-ar putea să vă placă și