Witam wszystkich.
Piszę taki program (dopiero się uczę więc każda sugestia mile widziana) w którym wymyśliłem takie założenia.
Tworzymy „układ planetarny”
tzn podajemy ile chcemy mieć planet(zmienna ilość) , a potem ile planeta ma mieć księżycy
Każda planeta ma swoje współrzędne gdzie się znajduje a księżyce (jeśli są) są w pobliżu planety.
Chcę napisać to obiektowo czyli planeta ma swoje księżyce
i tu pojawia się mój problem
jak się potem odwołać do danego księżyca danej planety z głównej klasy
albo sprawdzić czy i ile planeta ma księżyców
albo np. jak wypisać je po kolei
księżyc 1 x=..., y=... Planety1
księżyc 2 x=..., y=... Planety1
księżyc 3 x=..., y=... Planety1
księżyc 1 x=..., y=... Planety2
…
…
...
gdzie x,y to współrzędne
napisałem to tak:
public class Planety {
public static void main(String[] args) {
int a;
Scanner odczyt = new Scanner(System.in);
System.out.println("Podaj ilosc planet: ");
a = odczyt.nextInt();
Planeta[] plan= new Planeta[a];
for (int i=0; i<a; i++)
{
float x, y;
int ilosc;
System.out.println("podaj pozycje x planety ");
x = odczyt.nextInt();
System.out.println("podaj pozycje y planety ");
y = odczyt.nextInt();
System.out.println("podaj ilość ksiezycy ");
ilosc = odczyt.nextInt();
plan[i] = new Planeta(x,y,ilosc);
}
// pytanie jak np. wypisać księżyce planet
// albo sprawdzić czy dana planeta ma i ile księżyców
}}
///////////////////////// nowy plik
package Planety;
import java.util.Scanner;
import java.util.Random;
public class Planeta{
float x;
float y;
int ilosc;
public Blok(float i, float j, int m){
x = i;
y = j;
d = 3; // odleglosc orbity (kwadratowej ;) )
ilosc = m;
Ksiezyc[] ksi = new Ksiezyc[ilosc];
Random randomGenerator = new Random();
for (int jj=0; jj<ilosc; jj++)
{
ksi[jj] = new Punkt((x-d/2)+randomGenerator.nextFloat()*d,randomGenerator.nextFloat()*((y+d/2)-(y-d/2)));
}
}
}
///////////////////// nowy plik
package Planety;
public class Ksiezyc {
float x;
float y;
public Ksiezyc(float a, float b){
x= a;
y= b;
}
}