java - 如何将这个等式放入java代码中?

标签 java math equation

这就是我所做的,但无论我做什么,我都会不断得到无穷大:

 public double calcr(){
  double cot = 1 / Math.tan(0);
  return  .5 * sideLength * cot * (Math.PI / numSides);
}

主要:

RegularPolygon poly = new RegularPolygon(4, 10);   
System.out.println(poly.calcr());

输出:

Inifinity 

我做错了什么?

最佳答案

问题是你做的

double cot = 1 / Math.tan(0);

这将使 cot 成为 Infinity

你想要:

double cot = 1 / Math.tan(Math.PI / numSides);
return .5 * sideLength * cot;

或者,在一行中:

return .5 * sideLength / Math.tan(Math.PI / numSides);

关于java - 如何将这个等式放入java代码中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19285121/

相关文章:

java - 在 Java 中,我应该为常量属性使用 getter 还是接口(interface)标记?

java - 立即属性的错误消息

c# - 二叉树到数学表达式

java - java中如何打印输出

在 C 中将 RGB 转换为灰度

c - 如何修改 C 中的二次公式程序,使其在整个程序中只计算一次平方根?

java - 如何在java swing中生成这个布局

java - 有没有办法将从进程对象的 getOutPutStream() 方法获得的输出保存到文件中

java - 如何在 Java 中有效生成完美的数字到数字不变数?

c - 这个 an + bnlog2(n) + cn3 = k,在这里为更大的输入找到 n 不能正常工作