Привет всем, кто тратит время на то, чтобы попытаться решить мою проблему. Я действительно застрял в первый раз за время и очень ценю некоторую помощь. Но достаточно экспозиции; вот то, что я реализовал до сих пор:
public class EulerBrick {
private int a, b, c;
private int d, e, f;
private Random random;
public EulerBrick(int a, int b, int c) {
this.a = a;
this.b = b;
this.c = c;
this.d = (int) Math.sqrt((a * a) + (b * b));
this.e = (int) Math.sqrt((a * a) + (c * c));
this.f = (int) Math.sqrt((b * b) + (c * c));
this.random = new Random();
if (verify(a, b, c, random.nextInt())) {
if (a % 3 != 0) {
if (b % 3 != 0) return;
if (c % 3 != 0) return;
}
if (a % 4 != 0) {
if (b % 4 != 0) return;
if (c % 4 != 0) return;
}
if (a % 11 != 0) {
if (b % 11 != 0) {
if (c % 11 != 0) return;
}
}
} else return;
printDimensions();
}
public boolean verify(double a, double b, double c, int k) {
a *= k;
b *= k;
c *= k;
if (a % 3 != 0) {
if (b % 3 != 0) return false;
if (c % 3 != 0) return false;
}
if (a % 4 != 0) {
if (b % 4 != 0) return false;
if (c % 4 != 0) return false;
}
if (a % 11 != 0) {
if (b % 11 != 0) {
if (c % 11 != 0) return false;
}
}
return true;
}
public void printDimensions() {
System.out.println("Side A: " + a + ", Side B: " + b + ", Side C: " + c + ", Side D: " + d + ", Side E: " + e + ", Side F: " + f);
}
}
А вот основной класс, который я использую для его проверки:
public class Main {
public static void main(String[] args) throws InterruptedException {
int i = 0, j = 0, k = 0;
while (true) {
new EulerBrick(i += 3, j += 4, k += 11);
Thread.sleep(1000);
}
// EulerBrick brick = new EulerBrick(44, 117, 240);
}
}
Снова любая помощь будет принята с благодарностью. Кроме того, это не курс / класс, а просто упражнение, на котором я себя поставил.