Я использую bc
из скрипта bash, чтобы выполнить быструю и грязную математику BigInteger, но когда я увеличиваю масштаб, он начинает разбивать мне строки:
pax> echo 'scale=200 ; 1 / 4' | bc
.2500000000000000000000000000000000000000000000000000000000000000000\
00000000000000000000000000000000000000000000000000000000000000000000\
00000000000000000000000000000000000000000000000000000000000000000
pax> num="$(echo 'scale=200 ; 1 / 4' | bc )" ; echo $num
.2500000000000000000000000000000000000000000000000000000000000000000\ 00000 ...
Как мнеостановить это, чтобы я мог получить номер без каких-либо расколов?Страница руководства документирует это поведение, но, похоже, не дает никаких вариантов для его изменения.
На самом деле, я сделаю шаг назад и сообщу вам источник запроса, если у кого-то есть лучшее решение.,Мне нужен массив строк в C, эквивалентный значениям 2 -n , в соответствии с:
static char *str[] = {
"1.00000000 ... 000", // 1/1 to 150 fractional places.
"0.50000000 ... 000", // 1/2
"0.25000000 ... 000", // 1/4
"0.12500000 ... 000", // 1/8
: : :
"0.00000000 ... 004", // 1/(2^256)
};
Мне все равно, какой язык генерирует массив, япросто собираюсь взять вывод и подключить его к моему C-коду.Однако мне нужна точность.