我需要创建一个代码来提示某人输入一个浮点数,并使用scanf输出应用于该输入数的标准逻辑函数的值。
后勤功能定义为:
L
f(x) = ----------------------
1 + e^(-k(x - x0))
这是我到目前为止所拥有的:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>
int main()
{
float number;
printf("Enter an integer: ");
scanf("%f",&number);
}
所以我的问题是,我可以编写什么代码才能使程序输出正确的值?我认为最重要的是如何将后勤功能整合到代码中?所有变量都应声明为float。提前非常感谢您!
答案 0 :(得分:0)
只需编写一个执行计算的函数,然后按照下面给出的代码进行调用即可。希望它能达到您的目的。
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>
float logistic(float x, float x0, float k)
{
return (1 / ( 1 - exp(-k * ( x - x0)))) ;
}
int main()
{
float number;
printf("Enter an integer: ");
scanf("%f",&number);
/* Let x0= 1.0 and k= 2.0 for simplicity */
/* You can change it whenever you want */
float x0= 1.0, k= 2.0;
printf(" Logistic value is %f ",logistic(number, x0 , k) );
}
谢谢大家的建议。