[ Beli Mag @ 10.03.2009. 14:33 ] @
Zadao sam sebi zadatak za izracunavanje cene paketa. Imam 3 promenljive i nekoliko fiksnih vrednosti. Promenljive se unose i zajedno sa ovim fiksnim se racunaju i rezultat reba da se prikaze na ekranu. Ovo mi je izgledali prolicno prosto jer je koristi samo osnovne matematicke operacije i jednostavni numericki unosi.

moj problem je sto po meni nisam napravio gresku ali kompajler mi kaze da ocekuje } na liniji 33 i 34 a ja ih imam (te linije su na kraju.

Code:


/*
 *Pocetak skripte
 */
 
 public class Paket
 {
 
      public static void main(String[] args)
    {
 

 
 /* unosenje broja paketa, broj adresa i marza kao jedine promenljive */
  
 int numberDnevniBrojPaketa;
 numberDnevniBrojPaketa = Typeit.inInt("Dnevni broj paketa");
 
 int numberBrojAdresa;
 numberBrojAdresa = Typeit.inInt("Broj adresa po paketu");
 
 int numberMarza;
 numberMarza = Typeit.inDouble("Marza");
 
 System.out.println("Dnevni broj paketa" + numberDnevniBrojPaketa);
 System.out.println("Broj adresa" + numberBrojAdresa);
 
 numberTrosakSakupljanja = (( 1.7 + ( 0.45 * numberDnevniBrojPaketa )) / numberDnevniBrojPaketa )
 numberPaketPoAdresi = (numberBrojAdresa * 2 / numberDnevniBrojPaketa)
 numberCenaPoPaketuFinal = (( numberTrosakSakupljanja + 0,32 + numberPaketPoAdresi + 0,20 ) * numberMarza )
 System.out.println("Kalkulisana cena po paketu" + numberCenaPoPaketuFinal);
 
 
    }
 }



gde gresim?
[ anon315 @ 10.03.2009. 15:26 ] @
Na 3 mesta ti fali

Code:

;
[ Beli Mag @ 11.03.2009. 07:07 ] @
nije do toga. stavio sam ; na krajevima te tri linje i ista greska pri startovanju:

Exception in thread "main" java.lang.NoClassDefFoundError: Paket
[ Ivan Ivanic @ 11.03.2009. 07:29 ] @
Odakle izvršavaš java komandu i kako ti izgleda classpath?
[ Beli Mag @ 11.03.2009. 09:10 ] @
Citat:
Ivan Ivanic: Odakle izvršavaš java komandu i kako ti izgleda classpath?


ups... sta je claccpath? jedino sta sam podesio je u Jcreatoru JDK profiles-> putajnu ka instalaciji jsdk1.42.19 i on je sam ubacio razne *.jar-ove

[ Beli Mag @ 11.03.2009. 09:11 ] @
a startovanje jave idem Build->Compile File->Execute File
[ vrabicica @ 11.03.2009. 09:22 ] @
[ vrabicica @ 11.03.2009. 09:32 ] @
[ Ivan Ivanic @ 11.03.2009. 09:55 ] @
Daj batali IDE. Ako praviš ovakve programčiće IDE je totalni overkill.
Ako ne znaš šta je classpath... batali IDE - molim te.
Je li koristiš javu 1.4 s nekim posebnim razlogom?

Ne znam kako ti ide u JCreator-u ali ne bi trebao da bude problem sa CLASSPATH ako izvršavaš iz IDE-ta...
Taj ti se exception javlja kad java ne može da nađe class fajl.
[ gajo2 @ 11.03.2009. 10:32 ] @
Moguce da ti se fajl ne zove Paket.java? Ima fajla mora da bude isti kao i ime glavne klase.
[ Beli Mag @ 11.03.2009. 11:12 ] @
imas li neki bolji predlog?
[ Beli Mag @ 11.03.2009. 11:13 ] @
Citat:
gajo2: Moguce da ti se fajl ne zove Paket.java? Ima fajla mora da bude isti kao i ime glavne klase.


pokusao sam i sa Paket.java i ista greska se javlja
[ gajo2 @ 11.03.2009. 11:32 ] @
Pa vidi, mi nemamo pojma sta se kod tebe desava jer ne vidimo, a ti ne umes da objasnis. Tako da ti preporucujem da probas da kompajliras svoj prvi Hello world program u konzoli, pa nakon sto ti uspe imaces neku ideju sta treba da se radi.

1. Napisi ovaj program u Notepadu ili Ultraedit itd...
Code:
class Test {
  public static void main(String[] args) {
    System.out.println("Hello");
  }
}

2. Fajl nazovi Test.java. Pazi da je bitno da bude veliko T, i ako pises u Notepadu onda se uveri da nije Test.java.txt nego bas Test.java
3. Zatim idi u command prompt (Start->Run->upises cmd) i idi u direktorijum gde si snimio Test.java. Recimo da se nalazi u C:\Temp direktorijumu
4. Kompajliraj program:
Code:
C:\Temp\> javac Test.java

5. Pokreni program
Code:
C:\Temp\> java Test


Ako ti javac ne radi, onda nisi namestio PATH do javac.exe. Verovatno ti se nalazi u C:\j2sdk1.4.2_19\bin\javac.exe.
Dakle desni klik na My Computer, pa Properties, pa zadnji tab i tamo imas dugme Environment properties. Pojavi se dijalog sa dve liste, u donjoj nadji PATH liniju, dvaput klik i pojavice se novi dijalog. Nemoj nista brisati nego na sam pocetak dopisi putanju (npr. C:\j2sdk1.4.2_19\bin) i ne zaboravi tacku-zarez. Sve pozatvaraj, zatim otvori novi prozor command prompta, nemoj koristiti onaj stari, pa probaj da upises javac i vidi da li radi. Ako ne, pogresno si namestio putanju.
[ Beli Mag @ 11.03.2009. 12:28 ] @
ovo radi.

pokusao sam to isto sa mojom skriptom i dobijam poruku koju sam dobijao ranije. kad kopajliram, on ocekuje zagradu posle 5 linije tj posle dodeljivanje klase. takodje ocekuje zagradu na samom kraju skripte iako ona postoji.

errors 2

Paket.java 5: expected '{'
public class Paket.java

Paket.java:34: expected '}'

[ gajo2 @ 11.03.2009. 13:01 ] @
OK pregledao sam tvoj kod, pa cu da navedem koje si greske napravio a ti nadji gde.

1. Kada pises realni broj, npr. 543,6411 onda to pises po americkoj notaciji, tj. sa tackom, a ne sa zarezom: 543.6411
2. Moras da deklarises tip promenljive. Ne mozes samo napisati ime.
3. Kada deklarises da je neki broj int, onda ne mozes u njega da stavis double bez eksplicitne konverzije.
[ bantu @ 11.03.2009. 13:06 ] @
Ovde si naspravio vise gesaka, na par mjesta ti je falila ; zatim nisi definisao varijable numberTrosakSakupljanja, numberPaketPoAdresi i numberCenaPoPaketuFinal. Medjutim mislim da ti je najveci problem pravila klasa Typeit i njene staticne metode inInt i inDouble, koje pretpostavljam da sluze za unos teksta sa konzole. Pretpostavljam da nemas tu klasu na classpath-u ili je nemas uopste. Kada sam zakomentarisao ove linije i postavio vrijednosti rucno sve je radilo ok. Evo pogledaj ispod.

Code:


/*
 *Pocetak skripte
 */
 
 public class Paket
 {
 
      public static void main(String[] args)
    {
 

 
 /* unosenje broja paketa, broj adresa i marza kao jedine promenljive */
  
 int numberDnevniBrojPaketa = 10;
 // numberDnevniBrojPaketa = Typeit.inInt("Dnevni broj paketa");

 
 int numberBrojAdresa = 10;
 // numberBrojAdresa = Typeit.inInt("Broj adresa po paketu");
 
 double numberMarza = 10d;
 //numberMarza = Typeit.inDouble("Marza");
 
 System.out.println("Dnevni broj paketa" + numberDnevniBrojPaketa);
 System.out.println("Broj adresa" + numberBrojAdresa);
 
 double numberTrosakSakupljanja = (( 1.7d + ( 0.45d * new Double(numberDnevniBrojPaketa).doubleValue())) / new Double(numberDnevniBrojPaketa).doubleValue() );
 double numberPaketPoAdresi = (new Double(numberBrojAdresa).doubleValue() * 2d / new Double(numberDnevniBrojPaketa).doubleValue());
 double numberCenaPoPaketuFinal = (( numberTrosakSakupljanja + 0.32d + numberPaketPoAdresi + 0.2d ) * numberMarza );
 System.out.println("Kalkulisana cena po paketu" + numberCenaPoPaketuFinal);
 
 
    }
 }

[ vrabicica @ 11.03.2009. 13:29 ] @
[ Beli Mag @ 11.03.2009. 15:27 ] @
Citat:
bantu: Ovde si naspravio vise gesaka, na par mjesta ti je falila ; zatim nisi definisao varijable numberTrosakSakupljanja, numberPaketPoAdresi i numberCenaPoPaketuFinal. Medjutim mislim da ti je najveci problem pravila klasa Typeit i njene staticne metode inInt i inDouble, koje pretpostavljam da sluze za unos teksta sa konzole. Pretpostavljam da nemas tu klasu na classpath-u ili je nemas uopste. Kada sam zakomentarisao ove linije i postavio vrijednosti rucno sve je radilo ok. Evo pogledaj ispod.



i meni radi ova sredjena skripta. sada cu pokusati da ponovo unesem linije za unosenje varijabli numberTrosakSakupljanja.