使用scanf输出x的标准逻辑函数?

时间:2018-09-07 03:38:45

标签: c scanf

我需要创建一个代码来提示某人输入一个浮点数,并使用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。提前非常感谢您!

1 个答案:

答案 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) );
}

谢谢大家的建议。