Was unbekannt ist, bzw. irgendwo zwischen 1 und 35987, ist die Länge des Schiffs, das kannst du als äußerste Schleife nehmen.
Die Anzahl der Kinder ist ebenso unbekannt, aber man weiß, dass sie ungerade ist, er hat also mindestens ein Kind, maximal 35987, hier wird die Variable aber immer um 2 erhöht (damit die Variable weiterhin ungerade ist).
Das Alter ist Anzahl der Kinder + 1, aber maximal 89, wird immer um eins erhöht.
Da das Alter direkt von den Kindern abhängig ist (bzw. die Initialisierung der Variable), würde ich das als Schleife innerhalb der Schleife für die Anzahl der Kinder machen.
Ich nehme mal an, du nutzt Java? Ich hab das mal kurz geschrieben:
Code:
public class Seemannsgarn {
public static void main(String[] args) {
for (int shipLength = 1; shipLength <= 35987; ++shipLength) {
for (int children = 1; children <= 35987; children += 2) {
for (int age = children + 1; age <= 89; ++age) {
if (shipLength * children * age == 35987) {
System.out.println("shipLength: " + shipLength + ", children: " + children + ", age: " + age);
}
}
}
}
}
}