Problem z silnia

0

Witam dostałem w szkole zadanie aby znaleŹć bład dlaczego dany program sie nie skompiluje i niestety jestem poczatkujacy w javie i nie potrafie znaleŹć błędu prosze o pomoc.

public class PoprawnyKolos {
private int silnia=1;
/**
* @param args the command line arguments
/
public static void main(String[] args) {
int liczba=Integer.parseInt(JOptionPane.showInputDialog(null,"Podaj liczbe"));
static int mnoznik;
while(mnozik<=liczba)
silnia
=mnoznik;

    System.out.print("silnia wynosi" + silnia);


    // TODO code application logic here
}

}

0

Jeśli program się nie kompiluje, to przeczytaj komunikaty kompilatora. Krytyczne znaczenie mają te oznaczone jako błędy (errors), choć warto też sprawić, by kompilator nie wyświetlał ostrzeżeń (warnings). Komunikaty pokazują, gdzie leży błąd. Powinieneś zacząć od pierwszego komunikatu o błędzie i sprawdzić linijkę kodu, która mu odpowiada (przy każdym komunikacie kompilator wyświetla numer linijki kodu). Jeśli nadal tego nie ogarniasz -- bo zdarza się, że komunikaty są bezsensowne/lakoniczne -- to wtedy wklejasz je tutaj.

Mi się nawet nie chce czytać tego kodu i patrzyć w ciemno, skoro kompilator może Ci mówi, że np. nie rozpoznaje słowa "imt" w piątej linii (a np. chodziło Ci o "int"). Mogę pomóc i chętnie to tutaj robię, ale nie jestem przecież od tego, żeby sprawdzać każdą linijkę w poszukiwaniu literówki, którą kompilator sam Ci wychwytuje i wskazuje i którą mógłbyś samodzielnie poprawić.

(Niniejszym próbuję Cię nauczyć odrobiny samodzielności, czyli nie dać rybę, a pokazać, że masz pod ręką wędkę. A jeśli naprawdę musisz pisać na forum posta, to i tak powinieneś dorzucić komunikaty o błędach, jakie wywala kompilator. Dla wygody tych, co mają Ci pomóc.)

0

@bswierczynski, podziwiam Cię (to nie jest żart). Ja bym się ograniczył do rady: zainstaluj i uruchom kompilator.

0

pisze to w srodowisku netBeans i tam mi nie wyskakuje w jednej lini blad tylko w kazdej.

0

Przesada, nie w każdej. Dwie wskazówki:

  1. mnoznik!=mnozik,
  2. poczytaj co znaczy słowo static.
0

wlasnie szukalem w tablicach informatycznych i tam pisze ze static oznacza ze to bedzie uzywane w calym programie. blad mi wyskakuje w kazdej lini.

0

takie literowki mnoznik a mnozik musialy mi wystapić podczas przepisywania

0

Przeczytałeś tablice informatyczne dotyczące innego języka.
Na forum się kod wkleja, a nie przepisuje - musimy widzieć ten kod, który nie działa.

0

Po prubach i bledach został mi tylko jeden blad ale nie wiem czy na pewno dobrze to zrobilem dlatego poprosilem o pomoc na forum zeby pozniej zobaczyc czy sie wszystko zgadza i czemu jest jeszcze jeden bład dokładnie przy petli

0

static int silnia = 1;

/**
 * @param args the command line arguments
 */
public static void main(String[] args) {
    int liczba= Integer.parseInt(JOptionPane.showInputDialog (null,"Podaj liczbe"));
    int mnoznik ;
    while(mnoznik<=liczba)
        (silnia*=mnoznik);
    System.out.println("silnia wynosi:"+silnia);

teraz wyglada to tak i wyskakuje blad przy petli

0

Dwa błędy składniowe:

  • błędny nawias w wyrażeniu (silnia*=mnoznik;)
  • zmienna mnoznik nie została zainicjowana
    Jeden błąd semantyczny
  • pętla jest nieskończona.

1 użytkowników online, w tym zalogowanych: 0, gości: 1