maneira correta de armazenar grandes números em uma variável
Eu gostaria de brincar com números e, por mais elementar que seja, eu tenho escrito algoritmos para a seqüência de fibonacci e um caminho de força bruta para encontrar números primos!
Eu não sou um programador, apenas um cara de matemática.
No entanto, um problema que eu corro para ficar quieto com frequência é que um longo, duplo e flutuante muitas vezes fica sem espaço.
Se eu quisesse continuar a trabalhar no JAVA, de que maneira posso criar meu próprio tipo de dados para que eu não fique sem espaço.
Conceitualmente, eu pensei em colocar 3 duplas juntas assim,
public class run {
static double a = 0;
static double b = 0;
//static double c = 0;
static void bignumber(boolean x) {
if (x == true && a < 999999999) {
++a;
} else if (x == true && a == 999999999) {
++b;
a = 0;
}
System.out.print(b + "." + a + " \n");
}
public static void main(String[] args) {
while(true) {
bignumber(true);
}
}
}
Existe uma maneira melhor de fazer isso,
Eu gostaria de um dia poder dizer
mydataType X = 18476997032117414743068356202001644030185493386634 10171471785774910651696711161249859337684305435744 58561606154457179405222971773252466096064694607124 96237204420222697567566873784275623895087646784409 33285157496578843415088475528298186726451339863364 93190808467199043187438128336350279547028265329780 29349161558118810498449083195450098483937752272570 52578591944993870073695755688436933812779613089230 39256969525326162082367649031603655137144791393234 7169566988069
ou qualquer outro número encontrado emesse site
Eu também tentei
package main;
import java.math.BigInteger;
public class run {
BigDecimal a = 184769970321174147430683562020019566988069;
public static void main(String[] args) {
}
}
Mas ainda parece estar fora de alcance