Witam, mam problem, dopiero uczę się Javy, napisałem taki program kasy fiskalnej, jednak zamiast wypisywać to co dodaje w mainie wypisuje 3 razy :
nazwa 1szt. 1.0 = 1.0 - czyli to co podane domyślnie, podaję kod i proszę o pomoc ;)
/**
*
*/
package kasa;
/**
* @author Samheady
*
*/
class Pozycja
{
String nazwa;
int liczba;
Double cena;
Double suma;
Pozycja(String nazwa, int liczba, Double cena){
this.nazwa = nazwa;
this.liczba = liczba;
this.cena = cena;
this.suma = liczba*cena;
}
}
class Paragon{
int i=0;
Double podatek;
Double naleznosc;
Pozycja[] tab_poz = new Pozycja[100];
Paragon(){
for(int k=0; k<tab_poz.length; k++)
{
tab_poz[k] = new Pozycja("nazwa", 1, 1.0);
}
podatek=0.0;
naleznosc=0.0;
}
boolean dodaj(String name, int amount, Double price)
{
if(i<100)
{
tab_poz[i].nazwa=name;
tab_poz[i].liczba=amount;
tab_poz[i].cena=price;
i++;
return true;
}
else return false;
}
Double sumuj()
{
for(int j=0; j<i; j++)
{
naleznosc+=tab_poz[i].suma;
}
return naleznosc;
}
void drukuj()
{
for(int j=0; j<i; j++)
{
System.out.println(tab_poz[i].nazwa + " " + tab_poz[i].liczba + "szt. " + tab_poz[i].cena + " = " + tab_poz[i].suma);
}
System.out.println("Do zapłaty: " + sumuj());
}
}
public class kasa
{
/**
* @param args
*/
public static void main(String[] args)
{
Paragon p = new Paragon();
p.dodaj("Bluza",1,150.00);
p.dodaj("Spodnie",2,200.00);
p.dodaj("Buty",1,249.99);
p.drukuj();
}
}