⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sqrtf.c

📁 这个函数是一段采用二分法计算正的浮点数开方的代码
💻 C
字号:
/*采用二分法实现的求开平方的函数sqrtf()*/float sqrtf(float x){  //int x1,x2,x3;  float x1,x2,x3,y,fx;  float fx1,fx2,fx3,fx4;//printf("sqrtf() test 1\n");  if(x<0) printf("x<0,No Root Value!");  else if(x==0) y=x;  else{    x1=0;x2=0;    do     { x2=x2+0.5;//printf("in sqrtf() x2=%d\n",(int)x2);       fx2=x2*x2-x;//printf("in sqrtf() fx2=%d\n",(int)(fx2));printf("sqrtf() test 2\n");     }while(fx2<0);   if(fx2==0) y=x2;   else     { x1=x2-0.5;       do       { x3=(x1+x2)/2;         fx1=x1*x1-x;  //printf("sqrtf() test 3 fx1=%d\n",(int)(-(1000*fx1)));         fx3=x3*x3-x; //printf("sqrtf() test 4\n");         if(fx1*fx3>0) x1=x3;         /*fx1与fx3同符号,则根值处于x3~x2之间*/         if(fx1*fx3<0) x2=x3;         /*fx1与fx3符号相反,则根值处于x1~x3之间*/         if(fx3==0)   break;        if(fx3>=0) fx4=fx3;         else fx4=-fx3;       }while(fx4>0.005);//printf("sqrtf() test 3 fx4=%d\n",(int)(1000*fx4));       y=x3;     }  }  return(y); }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -