mirror of
https://github.com/MikeMcl/decimal.js.git
synced 2024-10-27 20:34:12 +00:00
229 lines
5.8 KiB
JavaScript
229 lines
5.8 KiB
JavaScript
if (typeof T === 'undefined') require('../setup');
|
|
|
|
T('toRadixString', function () {
|
|
|
|
function t(expected, n, radix) {
|
|
T.assertEqual(expected, new Decimal(n).toRadixString(radix));
|
|
}
|
|
|
|
Decimal.config({
|
|
precision: 30,
|
|
rounding: 4,
|
|
toExpNeg: -9e15,
|
|
toExpPos: 9e15,
|
|
minE: -9e15,
|
|
maxE: 9e15
|
|
});
|
|
|
|
for (var rad = 2; rad <= 36; rad++) {
|
|
t('0', 0, rad);
|
|
t('0', '0', rad);
|
|
t('NaN', NaN, rad);
|
|
t('NaN', 'NaN', rad);
|
|
t('Infinity', 1/0, rad);
|
|
t('Infinity', 'Infinity', rad);
|
|
t('1', 1, rad);
|
|
}
|
|
|
|
t("1100100", 100, -1);
|
|
t("1100100", 100, 0);
|
|
t("1100100", 100, 0.1);
|
|
t("1100100", 100, 1);
|
|
t("2s", 100, 36.1);
|
|
t("2s", 100, 37);
|
|
t("2s", 100, 100);
|
|
t("2s", 100, 10000);
|
|
t("10201", 100, 3.01);
|
|
t("10201", 100, 3.49);
|
|
t("10201", 100, 3.5);
|
|
t("10201", 100, 3.99);
|
|
|
|
t("1100100", 100, 2);
|
|
t("10201", 100, 3);
|
|
t("1210", 100, 4);
|
|
t("400", 100, 5);
|
|
t("244", 100, 6);
|
|
t("202", 100, 7);
|
|
t("144", 100, 8);
|
|
t("121", 100, 9);
|
|
t("100", 100, 10);
|
|
t("91", 100, 11);
|
|
t("84", 100, 12);
|
|
t("79", 100, 13);
|
|
t("72", 100, 14);
|
|
t("6a", 100, 15);
|
|
t("64", 100, 16);
|
|
t("5f", 100, 17);
|
|
t("5a", 100, 18);
|
|
t("55", 100, 19);
|
|
t("50", 100, 20);
|
|
t("4g", 100, 21);
|
|
t("4c", 100, 22);
|
|
t("48", 100, 23);
|
|
t("44", 100, 24);
|
|
t("40", 100, 25);
|
|
t("3m", 100, 26);
|
|
t("3j", 100, 27);
|
|
t("3g", 100, 28);
|
|
t("3d", 100, 29);
|
|
t("3a", 100, 30);
|
|
t("37", 100, 31);
|
|
t("34", 100, 32);
|
|
t("31", 100, 33);
|
|
t("2w", 100, 34);
|
|
t("2u", 100, 35);
|
|
t("2s", 100, 36);
|
|
|
|
t("10011100010000", 10000, 2);
|
|
t("111201101", 10000, 3);
|
|
t("2130100", 10000, 4);
|
|
t("310000", 10000, 5);
|
|
t("114144", 10000, 6);
|
|
t("41104", 10000, 7);
|
|
t("23420", 10000, 8);
|
|
t("14641", 10000, 9);
|
|
t("10000", 10000, 10);
|
|
t("7571", 10000, 11);
|
|
t("5954", 10000, 12);
|
|
t("4723", 10000, 13);
|
|
t("3904", 10000, 14);
|
|
t("2e6a", 10000, 15);
|
|
t("2710", 10000, 16);
|
|
t("20a4", 10000, 17);
|
|
t("1cfa", 10000, 18);
|
|
t("18d6", 10000, 19);
|
|
t("1500", 10000, 20);
|
|
t("11e4", 10000, 21);
|
|
t("kec", 10000, 22);
|
|
t("iki", 10000, 23);
|
|
t("h8g", 10000, 24);
|
|
t("g00", 10000, 25);
|
|
t("ekg", 10000, 26);
|
|
t("dja", 10000, 27);
|
|
t("cl4", 10000, 28);
|
|
t("bpo", 10000, 29);
|
|
t("b3a", 10000, 30);
|
|
t("aci", 10000, 31);
|
|
t("9og", 10000, 32);
|
|
t("961", 10000, 33);
|
|
t("8m4", 10000, 34);
|
|
t("85p", 10000, 35);
|
|
t("7ps", 10000, 36);
|
|
|
|
t("11110100001001000000", 1000000, 2);
|
|
t("1212210202001", 1000000, 3);
|
|
t("3310021000", 1000000, 4);
|
|
t("224000000", 1000000, 5);
|
|
t("33233344", 1000000, 6);
|
|
t("11333311", 1000000, 7);
|
|
t("3641100", 1000000, 8);
|
|
t("1783661", 1000000, 9);
|
|
t("1000000", 1000000, 10);
|
|
t("623351", 1000000, 11);
|
|
t("402854", 1000000, 12);
|
|
t("290221", 1000000, 13);
|
|
t("1c0608", 1000000, 14);
|
|
t("14b46a", 1000000, 15);
|
|
t("f4240", 1000000, 16);
|
|
t("bg939", 1000000, 17);
|
|
t("9987a", 1000000, 18);
|
|
t("7cf1b", 1000000, 19);
|
|
t("65000", 1000000, 20);
|
|
t("52kc1", 1000000, 21);
|
|
t("45k2c", 1000000, 22);
|
|
t("3d486", 1000000, 23);
|
|
t("3082g", 1000000, 24);
|
|
t("2e000", 1000000, 25);
|
|
t("24n7e", 1000000, 26);
|
|
t("1nlk1", 1000000, 27);
|
|
t("1hfe8", 1000000, 28);
|
|
t("1c01m", 1000000, 29);
|
|
t("1713a", 1000000, 30);
|
|
t("12hi2", 1000000, 31);
|
|
t("ugi0", 1000000, 32);
|
|
t("rr91", 1000000, 33);
|
|
t("pf1q", 1000000, 34);
|
|
t("nbbf", 1000000, 35);
|
|
t("lfls", 1000000, 36);
|
|
|
|
t("101111101011110000100000000", 100000000, 2);
|
|
t("20222011112012201", 100000000, 3);
|
|
t("11331132010000", 100000000, 4);
|
|
t("201100000000", 100000000, 5);
|
|
t("13531202544", 100000000, 6);
|
|
t("2322662122", 100000000, 7);
|
|
t("575360400", 100000000, 8);
|
|
t("228145181", 100000000, 9);
|
|
t("100000000", 100000000, 10);
|
|
t("514a1531", 100000000, 11);
|
|
t("295a6454", 100000000, 12);
|
|
t("179437c9", 100000000, 13);
|
|
t("d3d1212", 100000000, 14);
|
|
t("8ba496a", 100000000, 15);
|
|
t("5f5e100", 100000000, 16);
|
|
t("42752cg", 100000000, 17);
|
|
t("2ggadha", 100000000, 18);
|
|
t("227675h", 100000000, 19);
|
|
t("1b50000", 100000000, 20);
|
|
t("13a3k7g", 100000000, 21);
|
|
t("j8j9cc", 100000000, 22);
|
|
t("fc7ll2", 100000000, 23);
|
|
t("cd9j2g", 100000000, 24);
|
|
t("a60000", 100000000, 25);
|
|
t("8alepm", 100000000, 26);
|
|
t("6q4e5j", 100000000, 27);
|
|
t("5mjb0g", 100000000, 28);
|
|
t("4pb61p", 100000000, 29);
|
|
t("43dl3a", 100000000, 30);
|
|
t("3f8m8e", 100000000, 31);
|
|
t("2vbo80", 100000000, 32);
|
|
t("2ialc1", 100000000, 33);
|
|
t("26s96g", 100000000, 34);
|
|
t("1vmcmu", 100000000, 35);
|
|
t("1njchs", 100000000, 36);
|
|
|
|
t("1001010100000010111110010000000000", 10000000000, 2);
|
|
t("221210220202122010101", 10000000000, 3);
|
|
t("21110002332100000", 10000000000, 4);
|
|
t("130440000000000", 10000000000, 5);
|
|
t("4332142412144", 10000000000, 6);
|
|
t("502544411644", 10000000000, 7);
|
|
t("112402762000", 10000000000, 8);
|
|
t("27726678111", 10000000000, 9);
|
|
t("10000000000", 10000000000, 10);
|
|
t("4271815011", 10000000000, 11);
|
|
t("1b30b91054", 10000000000, 12);
|
|
t("c349ba483", 10000000000, 13);
|
|
t("6ac162c24", 10000000000, 14);
|
|
t("3d7dace6a", 10000000000, 15);
|
|
t("2540be400", 10000000000, 16);
|
|
t("1764g6422", 10000000000, 17);
|
|
t("g603fb9a", 10000000000, 18);
|
|
t("b3abb909", 10000000000, 19);
|
|
t("7g500000", 10000000000, 20);
|
|
t("5bcaikk4", 10000000000, 21);
|
|
t("40487b0c", 10000000000, 22);
|
|
t("2lcfd6fg", 10000000000, 23);
|
|
t("247kjf2g", 10000000000, 24);
|
|
t("1fo00000", 10000000000, 25);
|
|
t("169gphag", 10000000000, 26);
|
|
t("plokh3a", 10000000000, 27);
|
|
t("kl17a14", 10000000000, 28);
|
|
t("gnfiqc6", 10000000000, 29);
|
|
t("dlfkb3a", 10000000000, 30);
|
|
t("b893q85", 10000000000, 31);
|
|
t("9a0np00", 10000000000, 32);
|
|
t("7oh8of1", 10000000000, 33);
|
|
t("6g35112", 10000000000, 34);
|
|
t("5fdv5ap", 10000000000, 35);
|
|
t("4ldqpds", 10000000000, 36);
|
|
|
|
t("110010.01", 50.25, 2);
|
|
t("302.1", 50.25, 4);
|
|
t("62.2", 50.25, 8);
|
|
t("50.25", 50.25, 10);
|
|
t("32.4", 50.25, 16);
|
|
t("1e.9", 50.25, 36);
|
|
|
|
});
|