我的问题是我需要写一个复杂的数学方程式,使我将x提升为| y |的幂,这两个数字都是用户输入的。我尝试使用下面的代码,但会产生“ CS7036”错误:
没有给出与所需的'Math.Pow(double,double)'形式参数'y'相对应的参数
class Program
{
static void Main(string[] args)
{
double x,y,z,v;
Console.Write("x=");
double.TryParse(Console.ReadLine(), out x);
Console.Write("y=");
double.TryParse(Console.ReadLine(), out y);
Console.Write("z=");
double.TryParse(Console.ReadLine(), out z);
v=(1+Math.Pow(Math.Sin(x+y)))/
Math.Abs(x-2*y/(1+x*x*y*y))*Math.Pow(x,Math.Abs(y))+
Math.Pow(Math.Cos(Math.Atan(1/z)),2);
Console.Write("v="+v);
Console.ReadKey();
}
}
答案 0 :(得分:4)
尝试为您的战俘指定第二个参数:
Math.Pow(Math.Sin(x + y),秒)
在
v = (1 + Math.Pow(Math.Sin(x + y))) /
...
答案 1 :(得分:2)
(OP发布代码后)
double x,y,z,v;
Console.Write("x=");
double.TryParse(Console.ReadLine(), out x);
Console.Write("y=");
double.TryParse(Console.ReadLine(), out y);
Console.Write("z=");
double.TryParse(Console.ReadLine(), out z);
v=(1+Math.Pow(Math.Sin(x+y)))/
Math.Abs(x-2*y/(1+x*x*y*y))*Math.Pow(x,Math.Abs(y))+
Math.Pow(Math.Cos(Math.Atan(1/z)),2);
Console.Write("v="+v);
Console.ReadKey();
错误CS7036没有给出与'Math.Pow(double,double)'所需的形式参数'y'相对应的参数
您仅用一个参数Math.Sin(x + y)
调用Math.Pow(),它需要两个参数。
检查公式,并使用两个参数调用Math.Pow
:
Math.Pow(Math.Sin(x + y), something_here )
我不确定C7036是什么,但是此代码段输出8
:
var x = 2;
var y = 3;
var number = Math.Pow(x, Math.Abs(y));
Console.Write(number);
在此示例中,x和y为int
,数字为double
类型。