数字をいじってみたいと思いますが、基本的には、フィボナッチ数列のアルゴリズムと素数を見つけるためのブルートフォースパスを作成しています。
私はプログラマーではなく、ただの数学者です。
しかし、私がしばしば静かに遭遇する問題は、長くて長いダブルとフロートがしばしば部屋を使い果たしてしまうことです。
JAVAで作業を続けたい場合、部屋が不足しないように、どのようにして独自のデータ型を作成できますか。
概念的には、3つのダブルをこのように組み合わせると思いました。
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);
}
}
}
これを行うためのより良い方法はありますか、
いつか言えるようになりたい
mydataType X = 18476997032117414743068356202001644030185493386634 10171471785774910651696711161249859337684305435744 58561606154457179405222971773252466096064694607124 96237204420222697567566873784275623895087646784409 33285157496578843415088475528298186726451339863364 93190808467199043187438128336350279547028265329780 29349161558118810498449083195450098483937752272570 52578591944993870073695755688436933812779613089230 39256969525326162082367649031603655137144791393234 7169566988069
またはこのサイトで見つかったその他の番号
私も試しました
package main;
import java.math.BigInteger;
public class run {
BigDecimal a = 184769970321174147430683562020019566988069;
public static void main(String[] args) {
}
}
しかし、それでも範囲外のようです