prośba o sprawdzenie poprawności programu

0

hej, piszę zadanie domowe na komputerze, na którym nie mam w czym go uruchomić (a nie mój więc nie będę nic instalować), czy mógłby ktoś u siebie puścić ten program? baardzo proszę.

polecenie brzmi:

Proszę napisać program, w którym zdefiniowana zostanie klasa Statek posiadająca co najmniej jedno publiczne pole nr do numerowania statków. Klasa Start ma natomiast utworzyć tablicę o rozmiarze SEA_SIZE (SEA_SIZE to stała całkowitoliczbowa o wartości 50) i umieści w niej, na losowo wybranych pozycjach, SHIPS statków (SHIPS to stała całkowitoliczbowa o wartości 10). Pozostałe pola tablicy mają nie mieć przypisanych obiektów klasy Statek. W trakcie tworzenia statków mają zostać one ponumerowane. Tablicę należy następnie przesłać do metody znajdującej się w klasie Start. Metoda ta ma przeglądnąć całą tablicę i wypisać na ekranie położenie i numer statku.

Na pozycji 5 jest statek 2
Na pozycji 7 jest statek 8
Na pozycji 13 jest statek 6
Na pozycji 16 jest statek 4
itd.

nie wiem, czy to, co poniżej, jest ok?

class Statek
{
   public int nr;
}
 
 
class Start
{
    final static int SEA_SIZE = 50;
    final static int SHIPS = 10;
    public static void main(String[] args)
    {
        Statek[] tab = new Statek[SEA_SIZE];
        Random generate = new Random();
        Statek naszstatek = new Statek();
        Start a = new Start();
        int i;
        for(i = 0; i < SHIPS; i++)
           
        {  
            tab[generate.nextInt(SEA_SIZE)] = naszstatek;
            naszstatek.nr = i;
        }
        a.wypisz(tab);
    }
   
    public static void wypisz(Statek[] tablica)
    {
        for(int i = 0; i < tablica.length; i++)
        {
            if(tablica[i] != null)
            {
                System.out.println("Na pozycji " +i+ " jest statek" +tablica[i].nr);
            }
        }
    }
 
}
1

Skorzystaj z ideone.com.

0

ok, dzięki. udało się skompilować, ale mam problem.
w wyniku działania programu wychodzi:

Na pozycji nr: 2 jest statek o numerze: 9
Na pozycji nr: 3 jest statek o numerze: 9
Na pozycji nr: 9 jest statek o numerze: 9
Na pozycji nr: 11 jest statek o numerze: 9
Na pozycji nr: 19 jest statek o numerze: 9
Na pozycji nr: 23 jest statek o numerze: 9
Na pozycji nr: 24 jest statek o numerze: 9
Na pozycji nr: 25 jest statek o numerze: 9
Na pozycji nr: 26 jest statek o numerze: 9

o co chodzi? dlaczego wyłazi tylko 9? ale ze mnie noob. pomóżcie! please!

0

tworzysz tylko jeden statek i umieszczasz, go w wielu miejscach, a masz mieć wiele statków

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