Простейшая ошибка для более-менее опытного программиста, но не меня - C (СИ)
Формулировка задачи:
Написал кодПосле компиляции вылазит следующая ошибка: error #2140: Type error in argument 1 to 'pow'; expected 'double' but found 'double __cdecl (*)(double)'.
Что изменить в этой строчке?
#include <stdio.h> #include <math.h> #include <locale.h> int main (void) { float x, y, g; setlocale(LC_ALL, "RU"); printf("Введите два числа"); scanf("%f%f", &x, &y); if (x*y<2) g=(x+6*y)/(2); printf("g= %f\n", g); if (x*y>=1 && x*y<=10) g=(2)/(pow(exp,x))+cos(fabs(x-y)); printf("g= %f\n", g); if (x*y>10) g=(x*y+1)/(2+pow(x,2)+x*y); printf("g= %f\n", g); return 0; }
Решение задачи: «Простейшая ошибка для более-менее опытного программиста, но не меня»
textual
Листинг программы
g=2/(exp(x)+cos(fabs(x-y));
Объяснение кода листинга программы
- В коде имеется переменная
x
, которая не была инициализирована и используется в выражении. - В коде имеется переменная
y
, которая не была инициализирована и используется в выражении. - Функция
exp(x)
возвращает экспоненту от значения переменнойx
. - Функция
cos(fabs(x-y))
возвращает косинус от абсолютного значения разностиx
иy
. - Результат выражения
2/(exp(x)+cos(fabs(x-y)))
присваивается переменнойg
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д