Когда я запускаю этот код, я получаю неправильный вывод для computeArea() и computeVolume(). Логично, я считаю, что формулы верны. Например, вход для тетраэдра - длина стороны 4 (равносторонний треугольник), высота 5. Правильный ответ равен 37,72 для области и 11,55 для объема. То, что мой код выставляет, составляет 27,71 для области и 0,0 для объема. Так что я довольно смущен, почему он не будет работать. С этим связано намного больше кода, поэтому я помещаю сегмент, на который, я думаю, проблема. Спасибо заранее!Площадь поверхности и код объема тетраэдра Java
public double computeArea()
{
double tetrahedronSurfaceArea;
tetrahedronSurfaceArea = 4*((Math.sqrt(3)/4) *side*side);
return tetrahedronSurfaceArea;
}
public double computeVolume()
{
double tetrahedronVolume;
tetrahedronVolume = (1/3) * (((Math.sqrt(3))/4)*side*side) * height;
return tetrahedronVolume;
}
public String toString()
{
String tetrahedronResult = "area is " + computeArea() + "\n";
tetrahedronResult = tetrahedronResult + "volume is " + computeVolume() + "\n";
return tetrahedronResult;
}
Вы понимаете, что, если все ребра тетраэдра имеет длину 4, высота не может быть ВОЗМОЖНА 5, верно? Это будет 4 * sqrt (2/3). Ваша математика ошибочна. –
Мой учитель назначил, что длина стороны равна 4, а высота равна 5:/ – user2762979
Но это физически невозможно; поэтому нет правильного ответа ни для площади поверхности, ни для объема. –