Sunteți pe pagina 1din 4

Subiect 2. Produs.

java
public class Produs implements TVA{ //proprietati int IDProdus; String denumire; double pret; //constructor care initializeaza public Produs(int id, String den, double prt) { this.IDProdus=id; this.denumire=den; this.pret=prt; } //metoda setter pentru pret public void setPret(double pretNou) { this.pret=pretNou; } //metoda getter pentru pret public double getPret() { return pret; } //metoda toString care returneaza proprietatile sir public String toString() { String id=String.valueOf(IDProdus); String den=String.valueOf(denumire); String pr=String.valueOf(pret); return id+" "+den+" "+pr+" lei"; } //metoda equals care verifica egalitatea intre 2 obiecte public boolean equals(Produs obiect) { if ((this.IDProdus==obiect.IDProdus) &&(this.pret==obiect.pret) &&(this.denumire==obiect.denumire)) return true; else return false; } public double getPretCuTVA() { double pretTVA=this.pret+((this.pret*24)/100); return pretTVA; } public double getPretFaraTVA() { return this.pret; } public double getValoareTVA() { return (this.pret*24)/100; } }

ProdusAlimentar.java
public class ProdusAlimentar extends Produs implements TVA{ //proprietate noua String dataExpirarii; //constructor care initializeaza public ProdusAlimentar(int id, String den, int prt, String dat) { super(id,den,prt); //IDProdus=id; //denumire=den; //pret=prt; dataExpirarii=dat; } //metoda setter pentru data public void setData(String dataExp) { this.dataExpirarii=dataExp; } //metoda getter pentru data public String getData() { return dataExpirarii; } //metoda toString care returneaza proprietatile sir public String toString() { String id=String.valueOf(IDProdus); String den=String.valueOf(denumire); String pr=String.valueOf(pret); String data=String.valueOf(dataExpirarii); return id+" "+den+" "+pr+" lei "+data; } //metoda equals care verifica egalitatea intre 2 obiecte public boolean equals(ProdusAlimentar obiect) { if ((this.IDProdus==obiect.IDProdus) &&(this.pret==obiect.pret) &&(this.denumire==obiect.denumire) &&(this.dataExpirarii==obiect.dataExpirarii)) return true; else return false; } public double getPretCuTVA() { double pretTVA=this.pret+((this.pret*9)/100); return pretTVA; } public double getValoareTVA() { return (this.pret*9)/100; } }

TVA.java
public interface TVA { abstract double getPretCuTVA(); abstract double getPretFaraTVA(); abstract double getValoareTVA(); }

Magazin.java
public class Magazin { public static void main(String[] args) { //instantierea obiectelor Produs prod1=new Produs(1,"iPhone",200); Produs prod2=new Produs(2,"Samsung",300); ProdusAlimentar prod3=new ProdusAlimentar(3,"ceapa",40,"2 martie"); ProdusAlimentar prod4=new ProdusAlimentar(4,"usturoi",50,"3 martie"); ProdusAlimentar prod5=new ProdusAlimentar(5,"pisica",60,"4 martie"); //creare lista de obiecte Produs[] lista = {prod1, prod2, prod3, prod4, prod5}; double min=lista[0].getPret(); double max=min; double total=0; for(int i=0; i<5; i++) { System.out.println(lista[i].toString()); System.out.println("Pret+TVA="+lista[i].getPretCuTVA()); total=total+lista[i].getPretCuTVA(); if(min>lista[i].getPret()) min=lista[i].getPret(); if(max<lista[i].getPret()) max=lista[i].getPret(); } System.out.println("Total="+total); System.out.println("Pret minim="+min); System.out.println("Pret maxim="+max); for(int i=0; i<5; i++) { if(lista[i].getPret()==min) System. out.println(lista[i].toString()); if(lista[i].getPret()==max) System. out.println(lista[i].toString()); } } }

Subiect 3. a) Chei primare. Personal : IDPersoana Bolnavi: IDBolnav BolnaviBoli: IDBolnav+Data (cheie compus) b) Dependene funcionale. Personal: -un angajat (IDPersoana) poate avea nume unic = IDPersoana -> Nume -un angajat (IDPersoana) poate avea prenume unic = IDPersoana -> Prenume -un angajat (IDPersoana) poate avea nr de telefon unic = IDPersoana -> NrTelefon -un angajat (IDPersoana) poate avea funcie unic = IDPersoana -> Functia Bolnavi: -un bolnav (IDBolnav) poate avea nume unic = IDBolnav -> Nume -un bolnav (IDBolnav) poate avea prenume unic = IDBolnav -> Prenume -un bolnav (IDBolnav) poate avea nr de telefon unic = IDBolnav -> NrTelefon BolnaviBoli: -un bolnav poate avea ntr-o zi un singur diagnostic = IDBolnav Data -> DenumireaBolii c) Baza de date este n forma normal FN3, deoarece toate cmpurile non-primare depind numai de cmpurile primare. d) SELECT IDBolnav, Nume, Prenume, Data, DenumireaBolii FROM Bolnavi INNER JOIN BolnaviBoli ON Bolnavi.IDBolnav=BolnaviBoli.IDBolnav e) SELECT nume, prenume FROM Bolnavi WHERE Prenume LIKE D% f) SELECT count(*) AS Total FROM Personal

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