我有以下C#代码。
double a = 0;
double d = 0;
double er = 0;
int N = numbers.Length;
a=(N*N/6) + N
d=(N-(N/2))*2
for(int aa=1;aa<=data.length;aa++)
{
er=((10-aa)*(-a\) + d - (numbers[aa,12]))^2;
}
数字是这种格式的双数组:
1 0.3232 0.361 0.5214 0.233 -0.7678
2 0.3451 0.321 0.134 0.224 -0.706268
3 0.3123 0.351 0.155 0.523 -0.70626
4 0.36 0.312 0.216 0.233 -0.6453351
5 0.269 0.3331 0.162 0.224 -0.584962
但是在运行代码时,我在这一行上遇到了这个错误:
er=((10-aa)*(-a\) + d - (numbers[aa,12]))^2;
任何帮助将不胜感激。
答案 0 :(得分:13)
使用Math.Pow
- ^
不是幂运算符,它是logical XOR运算符。
c#中没有幂运算符。
答案 1 :(得分:0)
我不确定您打算使用^
运算符,但在C,C ++和C#中它是xor
运算符。它没有为非整数类型定义。如果你想做一个指数,你最好使用像Math.pow()这样的东西或自己做乘法