private static void PrintAllPlanetsWhoAreAerialHaveARingAndTheRadiusOfTheirSatellitesIsBiggerOrEqualToSatellitePolydeucesAndSmallerOrEqualToSatelliteTitania(PlanetSystem planetSystem) { Satellite Polydeuces = planetSystem.getSatellite("Polydeuces"); Satellite Titania = planetSystem.getSatellite("Titania"); for (int i = 0; i < planetSystem.listOfPlanets.Count; i++) { if (planetSystem.listOfPlanets[i].Daxtulioi == true && planetSystem.listOfPlanets[i].AerinosPlanitis == true) { int counter = 0; for (int k = 0; k < planetSystem.listOfPlanets[i].ListOfSatellites.Count; k++) { if ((planetSystem.listOfPlanets[i].ListOfSatellites[k].AktinaTouDoruforou < Polydeuces.AktinaTouDoruforou) && planetSystem.listOfPlanets[i].ListOfSatellites[k].AktinaTouDoruforou > Titania.AktinaTouDoruforou) { counter++; } } if (counter == 0) { Console.WriteLine($"\nThe planet {planetSystem.listOfPlanets[i].PlanetName} is aerial, has a ring and all the satellites of that particular planet have a radius >= to Polydeuces" + $" and also have a radius <= to Titania. The total number of satellites of planet {planetSystem.listOfPlanets[i].PlanetName} is: {planetSystem.listOfPlanets[i].ListOfSatellites.Count}"); Console.WriteLine($"Please find below their respective names:"); for (int k = 0; k < planetSystem.listOfPlanets[i].ListOfSatellites.Count; k++) { Console.WriteLine($"{k + 1} - {planetSystem.listOfPlanets[i].ListOfSatellites[k].SatelliteName}"); } } } } }
private static void PrintSatellitesOfPlanetsWithOrbitalPeriodBiggerThanAfroditiAndSmallerThanOuranouAndTheSatellitesHaveAnOrbitalPeriodBiggerThanMneme(PlanetSystem planetSystem) { Satellite Mneme = planetSystem.getSatellite("Mneme"); for (int i = 0; i < planetSystem.listOfPlanets.Count; i++) { int counter = 0; List <Satellite> satellitesMePeriodoPeriforaMegaluteriTisMneme = new List <Satellite>(); if (planetSystem.listOfPlanets[i].PlanetName != "Afroditi" && planetSystem.listOfPlanets[i].PlanetName != "Ouranos") { if (planetSystem.listOfPlanets[i].PeriodosPeriforas > planetSystem.listOfPlanets[1].PeriodosPeriforas && planetSystem.listOfPlanets[i].PeriodosPeriforas < planetSystem.listOfPlanets[6].PeriodosPeriforas) { for (int k = 0; k < planetSystem.listOfPlanets[i].ListOfSatellites.Count; k++) { if (planetSystem.listOfPlanets[i].ListOfSatellites[k].PeriodosPeristrofis > Mneme.PeriodosPeristrofis) { counter++; satellitesMePeriodoPeriforaMegaluteriTisMneme.Add(planetSystem.listOfPlanets[i].ListOfSatellites[k]); } } if (counter > 3) { Console.WriteLine($"Planet {planetSystem.listOfPlanets[i].PlanetName} has more than 3 satellites that fullfil the criteria:"); for (int c = 0; c < satellitesMePeriodoPeriforaMegaluteriTisMneme.Count; c++) { Console.WriteLine($"{satellitesMePeriodoPeriforaMegaluteriTisMneme[c].SatelliteName} has an orbital period of: {satellitesMePeriodoPeriforaMegaluteriTisMneme[c].PeriodosPeristrofis}"); } Console.WriteLine(); } } } } }