|
Вопрос # 3 848/ вопрос открыт / |
|
Приветствую, уважаемые эксперты! выдаёт ошибку `ln' undeclared (first use this function) в чем проблема?
Приложение: Переключить в обычный режим- #include <stdio.h>
- #include <conio.h>
- #include <math.h>
- int main()
- {double a,b;
- printf("vvedite a %dn",a);
- if (0<=a<1)
-
- b=((atan(a/sqrt(1-a*a)))+((ln((a*a*a)+3*a+2)))/ln(3))/(exp(a*a+3*a+2));
-
- else
- printf("neverno vvedeno chislo");
-
- getch();
- }
 |
Вопрос задал: Алексей Комнин (статус: Посетитель)
Вопрос отправлен: 4 марта 2010, 22:22
Состояние вопроса: открыт, ответов: 1.
|
Ответ #1. Отвечает эксперт: Егор
Здравствуйте, Алексей Комнин!
Я же написал в предыдущем вопросе - нет функции с именем ln. В Си эта функция называется log
Ну и немного по коду:
1) функция printf служит для вывода, а не ввода. Для ввода используем scanf.
2) т.к. переменная а у нас типа double, то вводить и выводить мы её должны со спецификатором %lf, а не %d
3) условие нельзя задавать в виде "0<=a<1", а нужно в виде "0<=a && a<1"
4) я думаю, что после того, как b посчитано, его всё же нужно вывести на экран? :)))
Код:
#include <stdio.h>
#include <conio.h>
#include <math.h>
int main()
{
double a,b;
printf("vvedite a:"); // печатаем приглашение ко вводу
scanf("%lf",&a); // запрашиваем значение переменной
if (0<=a && a<1) // если введено корректное значение, то считаем формулу
{
b=((atan(a/sqrt(1-a*a)))+((log((a*a*a)+3*a+2)))/log(3))/(exp(a*a+3*a+2));
printf("b=%lf",b);
}
else // иначе сообщим об ошибке
printf("neverno vvedeno chislo");
getch();
}
 |
Ответ отправил: Егор (статус: 10-ый класс)
Время отправки: 5 марта 2010, 07:00
Оценка за ответ: 5
Комментарий к оценке: спасибо)
|
Мини-форум вопроса
Всего сообщений: 1; последнее сообщение — 4 марта 2010, 22:44; участников в обсуждении: 1.
|
Паровоз (статус: 10-ый класс), 4 марта 2010, 22:44 [#1]:
Странно, Вам же Егор ответил, что нужно заменить ln на log
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|