int max = 100, count = 0; String[] field = new String[(max - 1) * (max - 1)]; for (int a = 2; a <= max; a++) for (int b = 2; b <= max; b++) { String term = valueOf(a).pow(b).toString(); if (stream(field).noneMatch(term::equals)) field[count++] = term; } System.out.printf("Für die Obergrenze %d für a und b ergeben sich %d einzigartige Ergebnisse.", max, count); } }
import static java.math.BigInteger.valueOf;
ReplyDeleteimport static java.util.Arrays.stream;
public static void main(String[] args) {
int max = 100, count = 0;
String[] field = new String[(max - 1) * (max - 1)];
for (int a = 2; a <= max; a++)
for (int b = 2; b <= max; b++) {
String term = valueOf(a).pow(b).toString();
if (stream(field).noneMatch(term::equals)) field[count++] = term;
}
System.out.printf("Für die Obergrenze %d für a und b ergeben sich %d einzigartige Ergebnisse.", max, count);
}
}