有人知道fmod的C#等价物是什么吗?我正在尝试将这行代码转换为C#。
$lon_rad = fmod(($long1+$dlon_rad + M_PI), 2*M_PI) - M_PI;
这是我到目前为止所拥有的。我只需要转换fmod。
double lon_rad = ((lon1+dlon_rad + Math.PI), 2*Math.PI) - Math.PI;
答案 0 :(得分:3)
其他人已经使用了正确的运算符,但没有使用整个语法,即:
double lon_rad = ((lon1+dlon_rad + Math.PI) % (2*Math.PI)) - Math.PI;
答案 1 :(得分:2)
对标准库使用P / Invoked调用(来自here):
[DllImport("msvcrt.dll")]
static extern double fmod(double x, double y);
答案 2 :(得分:0)
您是否尝试过%模数运算符?
答案 3 :(得分:0)
public static double fmod(double dividend, double divisor )
{
double Modulus =
(Math.Abs(dividend) - (Math.Abs(divisor) *
(Math.Floor(Math.Abs(dividend) / Math.Abs(divisor))))) *
Math.Sign(dividend);
return Modulus;
}