изменение формата вывода в SCILAB - PullRequest
0 голосов
/ 06 марта 2019

Я хочу изменить формат вывода в SCILAB, пробовал уже в другом режиме () но все равно получите результаты, как показано ниже.

--> a=factorial(20)
 a  = 

   2.433D+18

1 Ответ

0 голосов
/ 09 марта 2019

К сожалению функциональная страница Scilab format не очень обновлена.Полный синтаксис:

[ResultMode, ResultWidth]  = format(InputMode, InputWidth)

, где InputMode - строка с принятыми значениями "v" для «адаптивного форматирования» и "e" для

экспоненциальная / инженерная./ научное обозначение (например, -1.438E + 02)

InputWidth должно быть положительным целым числом от 1-25, указывающим количество цифр.Кстати, оба входа не являются обязательными.ResultMode - это целое число 1 для адаптивного и 0 для экспоненциального форматирования.ResultWidth также является положительным целым числом.

Проблема в том, что установка InputMode на "v" не гарантирует нормальную запись, если вы не указали достаточно InputWidth.В этом случае ваш результат состоит из 19 цифр:

2,432,902,008,176,640,000

. По какой-то причине вам нужно указать InputWidth из 21 цифры:

format("v", 21);

чтобы получить то, что вы ищете:

--> a = factorial(20)
 a  = 

   2432902008176640000.
...