Правильность формулы или откуда 0? - C (СИ)
Формулировка задачи:
Попросил меня отец написать ему прогу, чтобы формулу за него считала. Я подумал ща за 5 минут. Но что-то я запутался...
Суть в следующем: пользователь вводит 4 переменных, считается "x" и потом число "е" возводится в степень "х", но когда я ввожу 4 переменных, Х все время в 0 обращается и так всегда, при любых значениях. При этом я выяснил, что если считать просто ln(TG), то все норм, а вот если уже 0,953 * ln(TG), то тогда обращается в 0. Это может быть из-за того, что слишком большое число получается или я что-то забыл (может это "перегрузка переменной", я просто не знаю как это правильно назвать)?
#include <stdio.h> #include <conio.h> #include <math.h> int main() { float TG, BMI, GGT, WC; double A, x; printf("\tTG :"); scanf("%f", &TG); printf("\n\tBMI :"); scanf("%f", &BMI); printf("\n\tGGT :"); scanf("%f", &GGT); printf("\n\tWC :"); scanf("%f", &WC); x = 0,953*log(TG)+0,139*BMI+0,718*log(GGT)+0,053*WC-15,745; A = exp(x); printf("\nA = %lf", A); getch(); return 0; }
Решение задачи: «Правильность формулы или откуда 0?»
textual
Листинг программы
x = 0.953 * log(TG) + 0.139 * BMI + 0.718 * log(GGT) + 0.053 * WC - 15.745;
Объяснение кода листинга программы
В данном коде происходит вычисление значения переменной x на основе данных переменных TG, BMI, GGT, WC и константы 15.745. Примечание: Код представлен в виде математической формулы, а не в виде программного кода на каком-либо языке программирования.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д