Hi our crio is giving us errors when we try to do square roots using sqrt(variable)

Where variable is obviously a variable. any help would be usefully and appreciated.

We’re going to need a bit more info to help you out here.

What errors are you getting? What does your code look like?

When we try to download to the crio it tells us it cannot find the function. The code looks like this “Kvar = Dvar / sqrt(PrecentVar);”

It may be that WPILib doesn’t have a sqrt function. I honestly don’t know what WPILib has implemented, but sqrt() is usually in “math.h”, which is a Windows Library (or whatever OS you are using).

Second sentinel, make sure you #include <cmath>

If for some reason you’re having problems beyond #included <cmath> (in which case, you should probably fix anyways :-P) here’s a nice implementation of sqrt for floats taken from quake:

```
float SquareRootFloat(float number) {
long i;
float x, y;
const float f = 1.5F;
x = number * 0.5F;
y = number;
i = * ( long * ) &y;
i = 0x5f3759df - ( i >> 1 );
y = * ( float * ) &i;
y = y * ( f - ( x * y * y ) );
y = y * ( f - ( x * y * y ) );
return number * y;
}
```