Psst.. new poll here.
Psst.. new forums here.
Microsoft is blocking us again (TY IP Reputation!) so just use oauth login instead. :)
Paste
Pasted as text by lol ( 17 years ago )
package sklep;
import java.util.ArrayList;
import java.util.InputMismatchException;
import java.util.Random;
import java.util.Scanner;
class BazaSklep {
public ArrayList<Towary> Lista_Towarów = new ArrayList<Towary>();
int liczba_kategorii;
int liczba_elementów;
BazaSklep(){
Random rand=new Random();
Lista_Towarów.add(new Pokój_Dzienny("Kanapa", "Papa", "Piętrowe łóżko dziecięce. Wymiary: wys- 55, szer- 70, dł- 205", 555.50, rand.nextInt(40)));
Lista_Towarów.add(new Pokój_Dzienny("Szafa", "IKEA", "Tania, szybki montaż", 372.99, rand.nextInt(30)));
Lista_Towarów.add(new Pokój_Dzienny("Komoda", "IKEA", "Wykonana w starym stylu", 775.50, rand.nextInt(50)));
Lista_Towarów.add(new Pokój_Dzienny("TV", "Sony", "50 cali, 3 wejścia HDMI, FULL HD" , 4075.50, rand.nextInt(50)));
Lista_Towarów.add(new Kuchnia("Zlewozmywak", "Amon", "Wykonany z granitu", 399.99, rand.nextInt(34)));
Lista_Towarów.add(new Kuchnia("Okap", "Whirpool", "Kolor czarny", 239.99, rand.nextInt(30)));
Lista_Towarów.add(new Kuchnia("Kuchenka gazowa", "Whirpool", "Kuchenka koloru czarnego z 4 piecykami", 600.0, rand.nextInt(30)));
Lista_Towarów.add(new Kuchnia("Lodówka", "Whirpool", "Wbudowana maszynka do lodu", 2499, rand.nextInt(20)));
Lista_Towarów.add(new Åazienka("Pralka", "Samsung", "W peÅ‚ni automatyczna", 1499, rand.nextInt(20)));
Lista_Towarów.add(new Åazienka("Wanna", "ROCA", "Z hydromasaż", 2098, rand.nextInt(20)));
Lista_Towarów.add(new Åazienka("Kabina prysznicowa", "Aqua", "opis d", 1498, rand.nextInt(20)));
Lista_Towarów.add(new Gabinet("Komputer", "Intel", "4GB RAM, 3,2GHz proc, 1TB dysk twardy", 5098, rand.nextInt(20)));
Lista_Towarów.add(new Gabinet("Biurko", "IKEA", "Idealne dla informatyka", 4098, rand.nextInt(20)));
Lista_Towarów.add(new Gabinet("Krzesło", "IKEA", "Skórzane regulowane krzesło obrotowe", 498, rand.nextInt(20)));
}
public String Lista(){
String el="";
for (Towary towar: Lista_Towarów)
el+="Artykuł nr. "+Lista_Towarów.indexOf(towar)+".
"+towar.dane()+"
";
return el;
}
public String szukaj(int nr_towaru){
Towary towar = Lista_Towarów.get(nr_towaru);
return towar.dane();
}
public String kategorie(){
String el="";
liczba_kategorii=0;
for (Towary towar: Lista_Towarów)
if (liczba_kategorii+1==towar.nr_grupy)
el+="Kategoria nr. "+(++liczba_kategorii)+". "+towar.kategoria+"
";
return el;
}
public String towary_kategorii(int numer){
String el="";
liczba_elementów=0;
for (Towary towar: Lista_Towarów)
if (towar.nr_grupy==numer){
liczba_elementów++;
el+="Artykuł nr. "+Lista_Towarów.indexOf(towar)+".
"+towar.dane()+"
";
}
return el;
}
}
class Koszyk{
public ArrayList<Towary> koszyk = new ArrayList();
int liczba_elementow=0;
public void dodaj(Towary artykuł, int liczba_sztuk){
koszyk.add(artykuł);
artykuł.ilosc-=liczba_sztuk;
liczba_elementow++;
}
public void usuń(int usun){
Towary artykuł = koszyk.get(usun);
artykuł.ilosc+=artykuł.zamówione;
artykuł.zamówione=0;
koszyk.remove(artykuł);
liczba_elementow--;
}
public void usuń(int usun,int liczba){
Towary artykuł = koszyk.get(usun);
if (artykuł.zamówione>liczba){
artykuł.ilosc+=liczba;
artykuł.zamówione-=liczba;
return;
}
artykuł.ilosc+=artykuł.zamówione;
artykuł.zamówione=0;
koszyk.remove(artykuł);
liczba_elementow--;
}
public String wypisz(){
String el="";
for (Towary towar: koszyk)
el+="
Artykuł nr. "+koszyk.indexOf(towar)+".
"+towar.kupno();
if (el.equals(""))
return "Brak towarów w koszyku";
return el;
}
public String koszt(){
double kwota=0.0;
for (Towary towar: koszyk)
kwota+=towar.cena*towar.zamówione;
String el="Kwota do zapłaty: "+kwota+".
";
return el;
}
public void opróżnij(){
koszyk.clear();
}
}
abstract class Towary{
protected String nazwa;
protected String producent;
protected String opis_szczegółowy;
protected double cena;
protected int ilosc;
protected int nr_grupy;
protected String kategoria;
protected int zamówione;
Towary(String n, String p, String o, double c, int i){
this.nazwa=n;
this.producent=p;
this.opis_szczegółowy=o;
this.cena=c;
this.ilosc=i;
this.zamówione=0;
}
public String dane(){
return " Nazwa Towaru: "+nazwa+"
Producent: "+producent+"
Opis produktu: "+opis_szczegółowy+"
Cena towaru: "+cena+"
Ilość w magazynie: "+ilosc+"
";
}
public String kupno(){
return " Nazwa Towaru: "+nazwa+"
Producent: "+producent+"
Opis produktu: "+opis_szczegółowy+"
Cena towaru: "+cena+"
Liczba do kupienia: "+zamówione+"
";
}
}
class Pokój_Dzienny extends Towary{
Pokój_Dzienny(String n, String p, String o, double c, int i) {
super(n, p, o, c, i);
nr_grupy=1;
kategoria="Pokój Dzienny";
}
}
class Kuchnia extends Towary{
Kuchnia(String n, String p, String o, double c, int i) {
super(n, p, o, c, i);
nr_grupy=2;
kategoria="Kuchnia";
}
}
class Åazienka extends Towary{
Åazienka(String n, String p, String o, double c, int i) {
super(n, p, o, c, i);
nr_grupy=3;
kategoria="Åazienka";
}
}
class Gabinet extends Towary{
Gabinet(String n, String p, String o, double c, int i) {
super(n, p, o, c, i);
nr_grupy=4;
kategoria="Gabinet";
}
}
public class Main {
public static void main(String[] args) {
System.out.println(" Witam w moim sklepie.");
Scanner wybor = new Scanner(System.in);
BazaSklep baza=new BazaSklep();
Koszyk koszyk=new Koszyk();
int wyb1=0;
int iteracja_kat;
int wyb2;
int wyb3;
int liczba_ezg;
try{
while (wyb1!=-1){
System.out.print("
Aby zobaczyć kategorie towarów wybierz 1.
Aby zobaczyć wszystkie towary wybierz 2.
Aby usunąć towar z koszyka wybierz 3.
Aby przejrzeć towary znajdujące się w koszyku wybierz 4.
Aby zatwierdzić zakup wybierz 5.
Aby opuścić sklep wybierz -1.
Twój wybór: ");
wyb1=wybor.nextInt();
if (wyb1==1){
System.out.println("
"+baza.kategorie());
iteracja_kat=baza.liczba_kategorii;
System.out.print("Aby zobaczyć towary danej kategorii wybierz liczbę jej odpowiadającą.
");
System.out.print("Aby opuścić to menu wybierz -1.
Twój wybór: ");
wyb2=wybor.nextInt();
if ((wyb2<0)||(wyb2>iteracja_kat)){
System.out.println("
Dokonano błędny wybór. Powracam do menu głównego.
");
continue;
}
if (wyb2==-1){
System.out.println("Powracam do menu głównego.");
continue;
}
System.out.println("
"+baza.towary_kategorii(wyb2));
System.out.print("Aby opuścić to menu wybierz -1.
Aby dodać artykuł do koszyka wybierz odpowiadający mu numer.
Twój wybór: ");
wyb3=wybor.nextInt();
if (wyb3==-1) continue;
if (baza.Lista_Towarów.get(wyb3).nr_grupy==wyb2){
System.out.print("Podaj liczbÄ™ egzemplarzy towaru, do kupna: ");
liczba_ezg=wybor.nextInt();
if (baza.Lista_Towarów.get(wyb3).ilosc<liczba_ezg){
System.out.println("
Podana liczba egzemplarzy jest większa niż ilość towaru w magazynie. Dodanie do koszyka nieudane.");
continue;
}
baza.Lista_Towarów.get(wyb3).zamówione=liczba_ezg;
koszyk.dodaj(baza.Lista_Towarów.get(wyb3),liczba_ezg);
}
}
if (wyb1==2){
System.out.println(baza.Lista());
System.out.print("Aby dodać artykuł do koszyka wybierz odpowiadający mu numer.
Aby opuścić to menu wybierz -1.
Twój wybór: ");
wyb2=wybor.nextInt();
if (wyb2==-1) continue;
System.out.print("Podaj liczbÄ™ egzemplarzy towaru, do kupna: ");
liczba_ezg=wybor.nextInt();
baza.Lista_Towarów.get(wyb2).zamówione=liczba_ezg;
koszyk.dodaj(baza.Lista_Towarów.get(wyb2),liczba_ezg);
}
if (wyb1==3){
System.out.println(koszyk.wypisz());
System.out.print("Aby usunąć towar z koszyka wybierz 1.
Aby usunąć kilka egzemplarzy danego elementu wybierz 2.
Aby opuścić to menu wybierz -1.
Twój wybór: ");
wyb2=wybor.nextInt();
if (wyb2==-1) continue;
if (wyb2==1){
System.out.print("
Podaj numer artykułu do usunięcia: ");
wyb3=wybor.nextInt();
if ((wyb3<0)||(wyb3>koszyk.liczba_elementow)){
System.out.println("Podano błędny numer artykułu.");
continue;
}
koszyk.usuń(wyb3);
}
if (wyb2==2){
System.out.print("
Podaj numer artykułu: ");
wyb3=wybor.nextInt();
if ((wyb3<0)||(wyb3>koszyk.liczba_elementow)){
System.out.println("Podano błędny numer artykułu.");
continue;
}
System.out.print("Podaj liczbę sztuk do usunięcia: ");
koszyk.usuń(wyb3,wybor.nextInt());
}
}
if (wyb1==4){
System.out.println(koszyk.wypisz());
}
if (wyb1==5){
System.out.println("
"+koszyk.koszt());
koszyk.opróżnij();
}
}
}
catch(InputMismatchException e){
System.out.println("Wpisano niedozwolony znak. Zamykanie programu.");
wyb1=0;
}
System.out.println("
Dziękuję za dokonane zakupy i zapraszam ponownie.
");
}
}
Revise this Paste