Я пытаюсь научиться вычислять базу логарифмов 10 любых чисел, которые я вводил через scanf в свой код. Я полагаю, что я мог бы вычислить, что ln (a) a является номером ввода. У меня есть рабочий код, который вычисляет это; однако теперь я просто хочу разделить любые числа, которые выводит код ln (a) на определенный LN10. Это связано с тем, что естественный журнал числа, деленного на естественный лог на 10, выведет мое обязательное значение базы логарифма 10, которое я работаю для достижения. Здесь есть беспорядок, который у меня есть на данный момент. Любая помощь очень ценится!Пытается подсчитать логарифмическую базу 10 без Math.h (действительно близко) Просто возникают проблемы со связанными функциями
#define _CRT_SECURE_NO_WARNINGS
#define ALMOSTZERO 0.0000000000000000001
#define LN10 2.3025850929940456840179914546844
#include <stdio.h>
double log10(double);
double ln(double);
void main()
{
{
double x, a;
printf("Enter value: ");
scanf("%lf", &x);
while (x > 0)
{
double log10 = ln(x) * LN10;
printf("log10(%lf)=%lf\n", x, a);
printf("Enter value: ");
scanf("%lf", &x);
}
}
}
double ln(double x)
{
double sum = 0.0;
double xmlxpl = (x - 1)/(x + 1);
double denom = 1.0;
double frac = xmlxpl;
double term = frac/denom;
while (term > ALMOSTZERO)
{
sum += term;
//generate next term
denom += 2.0;
frac = frac * xmlxpl * xmlxpl;
term = frac/denom;
}
return 2.0 * sum;
}
Что вы хотите сказать? –