//UWAGA! WERSJA Z TABLICĄ, NIE KOLEKCJĄ
import java.util*
class Sklep
{
Set<Towar> tow;
Sklep()
{
tow = new HashSet<Towar>();
}
double wartoscTowarow()
{
double suma 0;
for(Towar t: tow)
for(int i=0; i<t.dost.length; i++)
suma+=t.dost[i].cena*t.dost[i]*ilosc;
return suma;
}
boolean dostarcza(String nazwaTowaru, String nazwaDostawcy)
{
boolean czy = false;
Iterator<Towar> it = tow.iteratot();
Towar pom;
while(it.hasNext() && !czy)
if((pom=it.next()).nazwa.equals(nazwaTowaru)) //najpierw podstawiam pod pom it.next(),
żeby nie kaszanić z iteratorem
{
for(i = 0; i<pom.dost.length && !czy; i++)
if(pom.dost[i].nazwaDostawcy.equals(nazwaDostawcy))
czy = true;
}
return czy;
}
Set<String> wszyscyDostawcy()
{
Set<String> wszyscy = new HashSet<String>();
for(Towar t : tow)
for(Dostawa d : t.dost)
wszyscy.add(d.nazwaDostawcy);
return wszyscy;
}
}
//----------------------------------------------------------------------------------------------------
class Towar
{
String nazwa;
Dostawa [] dost;
int licDostaw;
Towar(String nazwa, int maxDostaw)
{
this nazwa = nazwa;
dost = new double[maxDostaw];
}
void nowaDostawa()
{
String dostawca = ""; int ilosc=0; int cena=0;
Scanner sk = new Scanner(System.in);
System.out.println("Podaj nazwę nowego dostawcy");
dostawca = sk.nextLine();
System.out.println("Podaj cenę towaru");
cena = sk.nextDouble();
System.out.println("Podaj ilość towaru");
ilosc = sk.nextInt();
Dostawca d = new Dostawca (dostawca,ilosc,cena);
Set<Dostawa> pom = new HashSet<Dostawa>();
for(Dostawa x : dost)
pom.add(x)
pom.add(d);
dost = new Dostawa [pom.size()];
for(int i = 0; i<dost.length; i++)
dost[i]=pom.get(i);
}
}
//---------------------------------------------------
class Dostawa
{
String nazwaDostawcy;
double ilosc;
double cena;
}