乘法和小数除法

Oli*_*pel 5 c#

我是C#的新手,现在遇到数学问题.为什么我不能像这样简单地划分或划分"简单":

 decimal mLon1 = 0;
 decimal mLat1 = 0;
 decimal mFactor = 111021;
 decimal mRadius = 100;
 decimal mLat = 12.123;

 mLon1 = mLon - mRadius / Math.Abs(Math.Cos(((Math.PI / 180) * mLat)) * mFaktor);
 mLat1 = mLat - (mRadius / mFaktor);
Run Code Online (Sandbox Code Playgroud)

编译器显示错误:

运算符'*'不能应用于'double'和'decimal'类型的操作数.

与运营商'/'相同......

如何让我的代码工作?任何暗示的Thx.

Nee*_*eel 0

尝试下面的代码,您在“mFaktor”附近有拼写错误,应该是“mFactor”

decimal mLon1 = 0;
decimal mLat1 = 0;
decimal mFactor = 111021;
decimal mRadius = 100;
decimal mLat = (decimal)12.123;
decimal mLon = 0;
mLon1 = mLon - mRadius / (decimal)Math.Abs(Math.Cos(((Math.PI / 180) * (double)mLat)) * (double)mFactor);
mLat1 = mLat - (mRadius / mFactor);
Run Code Online (Sandbox Code Playgroud)