我一直在尝试将这个复杂的方程转化为代码,但看来我可能做错了什么。这是方程的图像:
这是我尝试用来将方程转换为代码的第一个代码。
double answer = 1 - (Math.Pow(f, n) * ((s * l / f) + Math.Pow((20 / f), w) / Math.Pow(20, n)));
这是我在第二次尝试中使用的代码:
double answer = 1 - Math.Pow(f, n) * ((s * l) / f) + Math.Pow((20 / f), w) / Math.Pow(20, n);
如果我假设方程的每个变量都是 2,那么我得到 -.02。但是当我运行代码时,第一次尝试代码返回的值是 -8,而第二次尝试返回的值是 -6.75。
我现在的代码中是否做错了什么?如果我不善于解释,也很抱歉。
我对此进行了测试,得到的结果是-0.02。尝试拆分代码以使其更清晰。它可能会帮助您在一行中诊断复杂方程的语法。
double f = 2;
double n = 2;
double s = 2;
double w = 2;
double l = 2;
double A = Math.Pow(f, n);
double B = (s * l) / f;
double C = Math.Pow((20 / f), w);
double bottom = Math.Pow(20, n);
double top = A * (B + C);
double answer = 1 - top / bottom;
在这两次尝试中,你只是把括号放在了错误的位置。
试试这个:
double answer =
1 - Math.Pow(f, n) * (s * l / f + Math.Pow((20 / f), w)) / Math.Pow(20, n);
尝试使用下面的公式:
double answer = (1 - Math.pow((Math.pow(f,n)*[s*l/f+20/f})),w)/Math.pow(20,f)
我喜欢脚趾甲剪