Generation

generate functionWed, 12 Apr 2023

public class EstacionSeguimiento { final static int N = 5; private String id; private int nuevosSatelites; private Satelite [] satelites; public EstacionSeguimiento(String id) { super(); this.id = id; this.nuevosSatelites = 0; this.satelites = new Satelite[N]; } public String getId() { return id; } public Satelite[] getSatelites() { return this.satelites; } @Override public String toString() { return "EstacionSeguimiento [id=" + id + ", nuevosSatelites=" + nuevosSatelites + ", satelites=" + Arrays.toString(satelites) + "]"; } public void addSatelite(Satelite s) { if (s != null) { boolean found = false; int i = 0; while (!found && i < this.satelites.length) { if (this.satelites[i] == null) { this.satelites[i] = s; found = true; } i++; } if (!found) { for (i = 1; i < this.satelites.length; i++) { this.satelites[i-1] = this.satelites[i]; } this.satelites[this.satelites.length - 1] = s; } } } public Satelite[] getSatelitesValidos() { Satelite [] salida; int nSatelitesValidos = 0; // Recorremos el array para contar el número de satelites válidos. for (int i = 0; i < this.satelites.length; i++) { if (this.satelites[i] != null) { nSatelitesValidos++; } } // Creamos el array de salida salida = new Satelite[nSatelitesValidos]; // Rellenamos el array de salida. int j = 0; for (int i = 0; i < this.satelites.length; i++) { if (this.satelites[i] != null) { salida[j] = this.satelites[i]; j++; } } return salida; } Cree el método: public Satelite[] getSatelitesCompatibles(Posicion pos) Este método devuelve un nuevo array de Satelites que contiene la referencia de los Satelites de this.satelites que son compatibles con el parámetro Posicion pos. El nuevo array no puede contener referencias null, y los Satelites deben ir en el mismo orden que tienen en this.satelites; por lo tanto el nuevo array debe tener una longitud que coincida con el número de celdas de this.satelites distintas de null que además contengan un Satelite compatible con pos.

public Satelite[] getSatelitesCompatibles(Posicion pos) { Satelite [] salida; int nSatelitesCompatibles = 0; // Recorremos el array para contar el número de satelites válidos. for (int i = 0; i < this.satelites.length; i++) { if (this.satelites[i] != null && this.satelites[i].compatible(pos)) { nSatelitesCompatibles++; } } // Creamos el array de salida salida = new Satelite[nSatelitesCompatibles]; // Rellenamos el array de salida. int j = 0; for (int i = 0; i < this.satelites.length; i++) { if (this.satelites[i] != null && this.satelites[i].compatible(pos)) { salida[j] = this.satelites[i

Questions about programming?Chat with your personal AI assistant