我正在尝试利用c#中的Math.Cos()函数来打印从0到2pi的一系列值,这些值增加0.1pi,因此进行20次迭代。问题是在执行for循环时,我无法更改x值。
public void Cos()
{
double x = 0;
double a = Math.PI * x;
double b = Math.Cos(a);
for (int i = 0; i < 21; i++)
{
Console.WriteLine("Cos({0})pi = {1}", x, b);
x += .1;
}
}
当我将结果打印到控制台时,它只记住x = 0时的cos值。因此,对于Cos(.1)pi,Cos(.2)pi,等等...
答案 0 :(得分:4)
我正在尝试利用c#中的Math.Cos()函数来打印从0PI到2PI的一系列值,这些值会增加.1PI
这听起来像是for
循环的工作,我们从0
的值开始,并在每次迭代中增加.1 * PI
,直到达到2 * PI
。
由于for
循环具有初始化程序部分,条件部分和递增部分,因此它是理想的构造。不需要从0到20递增的额外变量-我们可以使用for
循环来递增x
并测试退出条件!
public static void Cos()
{
for (double x = 0; x <= Math.PI * 2; x += Math.PI * .1)
{
Console.WriteLine("Cos({0})PI = {1}", x, Math.Cos(x));
}
}