Округление числа в PARI/GP

Я знаю, что команда "\p x" устанавливает точность для всех вычислений, но я ищу что-то немного другое. Учитывая число, вычисленное с высокой точностью, я хочу округлить его до более низкой точности только для одной части моего кода. Причиной этого является то, что принятие абсолютного значения комплексных чисел приводит к ошибкам округления, которые впоследствии вызывают проблемы. Я хочу, чтобы эти абсолютные значения были одинаковыми и не имели крошечных ошибок, которые они имеют прямо сейчас.

Другими словами, как я могу сделать 1.xxxxxxxxxxxxxx -> 1.xxxxxxx только для определенного числа?

1 ответ

Самое простое решение

z * precision(1., 100)

усечь компоненты z с относительной точностью до 100 цифр. В целях печати вы также можете использовать printf("%m.nf", z) со стандартными значениями.

Другие вопросы по тегам