在创建三角函数my_sind(d),my_cosd(d),my_tand(d),即使用了度参数,而不是一个弧度一个以90的倍数提供确切的答案,我注意到,结果是有时-0.0不是0.0。
my_sind( 0.0) --> 0.0
my_sind(-0.0) --> -0.0
my_sind(180.0) --> -0.0
my_sind(360.0) --> 0.0
sin()并且tan()通常会针对给定的零符号输入返回相同的零符号结果。my_sin()应该sin()为这些输入匹配才有意义。
my_sind( 0.0) alike sin( 0.0) --> 0.0
my_sind(-0.0) alike sin(-0.0) --> -0.0
现在的问题是:什么整数non_zero_n应/可将结果再回到-0.0为my_sind(180*non_zero_n),my_cosd(180*n + 180),my_tand(180*non_zero_n)?
编写代码很容易,因此只需f(-0.0)生成-0.0并完成即可。简单地想知道是否有任何理由使任何其他 f(x)回报-0.0(非零),x以及确保该符号的重要性。
注:这是不是为什么的问题0.0与-0.0发生。这不是为什么cos(machine_pi/4)不回来0.0。这也不是如何控制0.0或的生成的问题-0.0。我将其视为设计问题是最好的。
sind(180), sind(-180), sind(360), sind(-360),...?