Логарифмы более высокой точности

Мне нужно создать журнал по основанию 10, содержащий не менее 4 знаков после запятой. Однако встроенная функция log10 выдает выходные данные только с двумя десятичными знаками. Что мне делать? Есть ли другая функция или библиотека, которую я могу использовать?

, 👍0

Обсуждение

Как вы отображаете значения? Количество десятичных знаков, которое вы видите, вероятно, является побочным продуктом способа их преобразования в строки, а не лежащих в основе математических вычислений. Большая часть математических вычислений в Арудино выполняется с использованием типа float, точность которого должна составлять около 6 или 7 десятичных цифр., @Duncan C

Я просто использовал Serial.print без указания какой-либо точности. Это работает, спасибо, @Paddy


1 ответ


Лучший ответ:

4

Вы сможете получить 6 или 7 десятичных знаков из типа float в Arudino. Попробуйте использовать Serial.print для чисел с плавающей запятой с количеством десятичных знаков. Примерно так:

float x = log10(3.141592658);
Serial.print(x, 6);
,