Welcome, guest! Login / Register - Why register?
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&Atilde;&sup3;w = new ArrayList<Towary>();
    int liczba_kategorii;
    int liczba_element&Atilde;&sup3;w;
    BazaSklep(){
        Random rand=new Random();
        Lista_Towar&Atilde;&sup3;w.add(new Pok&Atilde;&sup3;j_Dzienny("Kanapa", "Papa", "Pi&Auml;™trowe &Aring;‚&Atilde;&sup3;&Aring;&frac14;ko dzieci&Auml;™ce. Wymiary: wys- 55, szer- 70, d&Aring;‚- 205", 555.50, rand.nextInt(40)));
        Lista_Towar&Atilde;&sup3;w.add(new Pok&Atilde;&sup3;j_Dzienny("Szafa", "IKEA", "Tania, szybki monta&Aring;&frac14;", 372.99, rand.nextInt(30)));
        Lista_Towar&Atilde;&sup3;w.add(new Pok&Atilde;&sup3;j_Dzienny("Komoda", "IKEA", "Wykonana w starym stylu", 775.50, rand.nextInt(50)));        
        Lista_Towar&Atilde;&sup3;w.add(new Pok&Atilde;&sup3;j_Dzienny("TV", "Sony", "50 cali, 3 wej&Aring;›cia HDMI, FULL HD" , 4075.50, rand.nextInt(50)));
        Lista_Towar&Atilde;&sup3;w.add(new Kuchnia("Zlewozmywak", "Amon", "Wykonany z granitu", 399.99, rand.nextInt(34)));
        Lista_Towar&Atilde;&sup3;w.add(new Kuchnia("Okap", "Whirpool", "Kolor czarny", 239.99, rand.nextInt(30)));
        Lista_Towar&Atilde;&sup3;w.add(new Kuchnia("Kuchenka gazowa", "Whirpool", "Kuchenka koloru czarnego z 4 piecykami", 600.0, rand.nextInt(30)));
        Lista_Towar&Atilde;&sup3;w.add(new Kuchnia("Lod&Atilde;&sup3;wka", "Whirpool", "Wbudowana maszynka do lodu", 2499, rand.nextInt(20)));
        Lista_Towar&Atilde;&sup3;w.add(new &Aring;azienka("Pralka", "Samsung", "W pe&Aring;‚ni automatyczna", 1499, rand.nextInt(20)));
        Lista_Towar&Atilde;&sup3;w.add(new &Aring;azienka("Wanna", "ROCA", "Z hydromasa&Aring;&frac14;", 2098, rand.nextInt(20)));
        Lista_Towar&Atilde;&sup3;w.add(new &Aring;azienka("Kabina prysznicowa", "Aqua", "opis d", 1498, rand.nextInt(20)));
        Lista_Towar&Atilde;&sup3;w.add(new Gabinet("Komputer", "Intel", "4GB RAM, 3,2GHz proc, 1TB dysk twardy", 5098, rand.nextInt(20)));
        Lista_Towar&Atilde;&sup3;w.add(new Gabinet("Biurko", "IKEA", "Idealne dla informatyka", 4098, rand.nextInt(20)));
        Lista_Towar&Atilde;&sup3;w.add(new Gabinet("Krzes&Aring;‚o", "IKEA", "Sk&Atilde;&sup3;rzane regulowane krzes&Aring;‚o obrotowe", 498, rand.nextInt(20)));
     }

    public String Lista(){
        String el="";
        for (Towary towar: Lista_Towar&Atilde;&sup3;w)
            el+="Artyku&Aring;‚ nr. "+Lista_Towar&Atilde;&sup3;w.indexOf(towar)+".
"+towar.dane()+"
";
        return el;
    }
    public String szukaj(int nr_towaru){
        Towary towar = Lista_Towar&Atilde;&sup3;w.get(nr_towaru);
        return towar.dane();
    }
    public String kategorie(){
        String el="";
        liczba_kategorii=0;
        for (Towary towar: Lista_Towar&Atilde;&sup3;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&Atilde;&sup3;w=0;
        for (Towary towar: Lista_Towar&Atilde;&sup3;w)
            if (towar.nr_grupy==numer){
                liczba_element&Atilde;&sup3;w++;
                el+="Artyku&Aring;‚ nr. "+Lista_Towar&Atilde;&sup3;w.indexOf(towar)+".
"+towar.dane()+"
";
            }
        return el;
    }
}

class Koszyk{
    public ArrayList<Towary> koszyk = new ArrayList();
    int liczba_elementow=0;

    public void dodaj(Towary artyku&Aring;‚, int liczba_sztuk){

        koszyk.add(artyku&Aring;‚);
        artyku&Aring;‚.ilosc-=liczba_sztuk;
        liczba_elementow++;
    }

    public void usu&Aring;„(int usun){
        Towary artyku&Aring;‚ = koszyk.get(usun);
        artyku&Aring;‚.ilosc+=artyku&Aring;‚.zam&Atilde;&sup3;wione;
        artyku&Aring;‚.zam&Atilde;&sup3;wione=0;
        koszyk.remove(artyku&Aring;‚);
        liczba_elementow--;
    }

    public void usu&Aring;„(int usun,int liczba){
        Towary artyku&Aring;‚ = koszyk.get(usun);
        if (artyku&Aring;‚.zam&Atilde;&sup3;wione>liczba){
            artyku&Aring;‚.ilosc+=liczba;
            artyku&Aring;‚.zam&Atilde;&sup3;wione-=liczba;
            return;
        }
        artyku&Aring;‚.ilosc+=artyku&Aring;‚.zam&Atilde;&sup3;wione;
        artyku&Aring;‚.zam&Atilde;&sup3;wione=0;
        koszyk.remove(artyku&Aring;‚);
        liczba_elementow--;
    }

    public String wypisz(){
        String el="";
        for (Towary towar: koszyk)
            el+="
Artyku&Aring;‚ nr. "+koszyk.indexOf(towar)+".
"+towar.kupno();
        if (el.equals(""))
            return "Brak towar&Atilde;&sup3;w w koszyku";
        return el;
    }
    public String koszt(){
        double kwota=0.0;
        for (Towary towar: koszyk)
            kwota+=towar.cena*towar.zam&Atilde;&sup3;wione;
        String el="Kwota do zap&Aring;‚aty: "+kwota+".
";
        return el;
    }
    public void opr&Atilde;&sup3;&Aring;&frac14;nij(){
        koszyk.clear();
    }
}

abstract class Towary{
    protected String nazwa;
    protected String producent;
    protected String opis_szczeg&Atilde;&sup3;&Aring;‚owy;
    protected double cena;
    protected int ilosc;
    protected int nr_grupy;
    protected String kategoria;
    protected int zam&Atilde;&sup3;wione;

    Towary(String n, String p, String o, double c, int i){
        this.nazwa=n;
        this.producent=p;
        this.opis_szczeg&Atilde;&sup3;&Aring;‚owy=o;
        this.cena=c;
        this.ilosc=i;
        this.zam&Atilde;&sup3;wione=0;
    }
    public String dane(){
        return "  Nazwa Towaru: "+nazwa+"
  Producent: "+producent+"
  Opis produktu: "+opis_szczeg&Atilde;&sup3;&Aring;‚owy+"
  Cena towaru: "+cena+"
  Ilo&Aring;›&Auml;‡ w magazynie: "+ilosc+"
";
    }
    public String kupno(){
        return "  Nazwa Towaru: "+nazwa+"
  Producent: "+producent+"
  Opis produktu: "+opis_szczeg&Atilde;&sup3;&Aring;‚owy+"
  Cena towaru: "+cena+"
  Liczba do kupienia: "+zam&Atilde;&sup3;wione+"
";
    }
}

class Pok&Atilde;&sup3;j_Dzienny extends Towary{
    Pok&Atilde;&sup3;j_Dzienny(String n, String p, String o, double c, int i) {
        super(n, p, o, c, i);
        nr_grupy=1;
        kategoria="Pok&Atilde;&sup3;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 &Aring;azienka extends Towary{
    &Aring;azienka(String n, String p, String o, double c, int i) {
        super(n, p, o, c, i);
        nr_grupy=3;
        kategoria="&Aring;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&Auml;‡ kategorie towar&Atilde;&sup3;w wybierz 1.
Aby zobaczy&Auml;‡ wszystkie towary wybierz 2.
Aby usun&Auml;…&Auml;‡ towar z koszyka wybierz 3.
Aby przejrze&Auml;‡ towary znajduj&Auml;…ce si&Auml;™ w koszyku wybierz 4.
Aby zatwierdzi&Auml;‡ zakup wybierz 5.
Aby opu&Aring;›ci&Auml;‡ sklep wybierz -1.
    Tw&Atilde;&sup3;j wyb&Atilde;&sup3;r: ");
           wyb1=wybor.nextInt();
            if (wyb1==1){
                System.out.println("
"+baza.kategorie());
                iteracja_kat=baza.liczba_kategorii;
                System.out.print("Aby zobaczy&Auml;‡ towary danej kategorii wybierz liczb&Auml;™ jej odpowiadaj&Auml;…c&Auml;….
");
                System.out.print("Aby opu&Aring;›ci&Auml;‡ to menu wybierz -1.
    Tw&Atilde;&sup3;j wyb&Atilde;&sup3;r: ");
                wyb2=wybor.nextInt();
                if ((wyb2<0)||(wyb2>iteracja_kat)){
                    System.out.println("
Dokonano b&Aring;‚&Auml;™dny wyb&Atilde;&sup3;r. Powracam do menu g&Aring;‚&Atilde;&sup3;wnego.
");
                    continue;
                }
                if (wyb2==-1){
                    System.out.println("Powracam do menu g&Aring;‚&Atilde;&sup3;wnego.");
                    continue;
                }
                System.out.println("
"+baza.towary_kategorii(wyb2));
                System.out.print("Aby opu&Aring;›ci&Auml;‡ to menu wybierz -1.
Aby doda&Auml;‡ artyku&Aring;‚ do koszyka wybierz odpowiadaj&Auml;…cy mu numer.
    Tw&Atilde;&sup3;j wyb&Atilde;&sup3;r: ");
                wyb3=wybor.nextInt();
                if (wyb3==-1) continue;
                if (baza.Lista_Towar&Atilde;&sup3;w.get(wyb3).nr_grupy==wyb2){
                    System.out.print("Podaj liczb&Auml;™ egzemplarzy towaru, do kupna: ");
                    liczba_ezg=wybor.nextInt();
                    if (baza.Lista_Towar&Atilde;&sup3;w.get(wyb3).ilosc<liczba_ezg){
                        System.out.println("
Podana liczba egzemplarzy jest wi&Auml;™ksza ni&Aring;&frac14; ilo&Aring;›&Auml;‡ towaru w magazynie. Dodanie do koszyka nieudane.");
                        continue;
                    }
                    baza.Lista_Towar&Atilde;&sup3;w.get(wyb3).zam&Atilde;&sup3;wione=liczba_ezg;
                    koszyk.dodaj(baza.Lista_Towar&Atilde;&sup3;w.get(wyb3),liczba_ezg);
                }
            }
            if (wyb1==2){
                System.out.println(baza.Lista());
                System.out.print("Aby doda&Auml;‡ artyku&Aring;‚ do koszyka wybierz odpowiadaj&Auml;…cy mu numer.
Aby opu&Aring;›ci&Auml;‡ to menu wybierz -1.
    Tw&Atilde;&sup3;j wyb&Atilde;&sup3;r: ");
                wyb2=wybor.nextInt();
                if (wyb2==-1) continue;
                System.out.print("Podaj liczb&Auml;™ egzemplarzy towaru, do kupna: ");
                liczba_ezg=wybor.nextInt();
                baza.Lista_Towar&Atilde;&sup3;w.get(wyb2).zam&Atilde;&sup3;wione=liczba_ezg;
                koszyk.dodaj(baza.Lista_Towar&Atilde;&sup3;w.get(wyb2),liczba_ezg);
            }
            if (wyb1==3){
                System.out.println(koszyk.wypisz());
                System.out.print("Aby usun&Auml;…&Auml;‡ towar z koszyka wybierz 1.
Aby usun&Auml;…&Auml;‡ kilka egzemplarzy danego elementu wybierz 2.
Aby opu&Aring;›ci&Auml;‡ to menu wybierz -1.
    Tw&Atilde;&sup3;j wyb&Atilde;&sup3;r: ");
                wyb2=wybor.nextInt();
                if (wyb2==-1) continue;
                if (wyb2==1){
                    System.out.print("
Podaj numer artyku&Aring;‚u do usuni&Auml;™cia: ");
                    wyb3=wybor.nextInt();
                    if ((wyb3<0)||(wyb3>koszyk.liczba_elementow)){
                        System.out.println("Podano b&Aring;‚&Auml;™dny numer artyku&Aring;‚u.");
                        continue;
                    }
                    koszyk.usu&Aring;„(wyb3);
                }
                if (wyb2==2){
                    System.out.print("
Podaj numer artyku&Aring;‚u: ");
                    wyb3=wybor.nextInt();
                    if ((wyb3<0)||(wyb3>koszyk.liczba_elementow)){
                        System.out.println("Podano b&Aring;‚&Auml;™dny numer artyku&Aring;‚u.");
                        continue;
                    }
                    System.out.print("Podaj liczb&Auml;™ sztuk do usuni&Auml;™cia: ");
                    koszyk.usu&Aring;„(wyb3,wybor.nextInt());
                }
            }
            if (wyb1==4){
                System.out.println(koszyk.wypisz());
            }
            if (wyb1==5){
                System.out.println("
"+koszyk.koszt());
                koszyk.opr&Atilde;&sup3;&Aring;&frac14;nij();
            }
        }
        }
        catch(InputMismatchException e){
           System.out.println("Wpisano niedozwolony znak. Zamykanie programu.");
           wyb1=0;
        }
        System.out.println("
	Dzi&Auml;™kuj&Auml;™ za dokonane zakupy i zapraszam ponownie.
");
    }
}

 

Revise this Paste

Your Name: Code Language: