2016-11-30 2 views
0

이것은 내 첫 번째 게시물입니다.연습 문제 2.2의 수학 공식 - 다니엘 리앙

Daniel Liang (제 10 판)의 Java 프로그래밍 입문 서책에서 한 일에 대한 답을 찾기 위해 주위를 둘러 보았습니다.

내 코드는 대부분 정확하다고 생각하지만 내 대답은 도서 콘솔 예제와 다릅니다. 책에 사용법을 알려주는 수학 공식을 사용했고 콘솔에 같은 숫자를 입력해도 대답은 동일하지 않습니다.

는 영역 계산하는 공식을 사용달라고보다 구체적인 : 지역 = 제곱근 (3)/4 (변의 길이)^2

나는 그 공식을 추가로 뭔가 잘못했을 수도

하지만, 사람들이 주위에 검색하는 것은 같은 일을 사용하여 제안 유지 (Math.sqrt (3)) 다음은

내 코드입니다, 어떤 도움이 appriciated됩니다 :

import java.util.Scanner; 

public class Exercise2 { 

    public static void main(String[] args) { 
     // Create new scanner 
     Scanner input = new Scanner(System.in); 

     // Prompt the user to enter length and height of the Equilateral triangle 
     System.out.print("Enter length of the sides" + 
     " and height of the Equilateral triangle: "); 

     double lengthOfSides = input.nextDouble(); 

     // Calculate the area & display to user 
     double area = (Math.sqrt(3)/4) * (Math.pow(lengthOfSides, 2)); 
     System.out.println("The area is: " + area); 

     //Calculate the volume & display to user 
     double volume = area * lengthOfSides; 
     System.out.println("The volume of the Triangular prism is: " + volume); 

     input.close();  

    } 

} 

이 책이 무엇을 얻을 내가 얻을 어떤 추가 잊어 버렸 :

,5 지역은 다음과 같습니다 : 6,

나는 이 등변 삼각형의 변의 길이와 높이를 입력받을 5.304405598179686 삼각형 프리즘의 부피는 다음과 같습니다 18.565419593628903

책 : 측면의 길이를 입력하고 정삼각형의 높이 : 3,5 지역은 다음과 같습니다 삼각 프리즘의 3.89 볼륨은 다음과 같습니다 19.48

+0

'lengthSides^2'의 결과로'square root (3)/4'의 결과를 배수해야한다고 명시되어 있습니까? 만약 그렇다면 올바르게 구현했습니다. 정확히 수식이 말한 것을 말하여주십시오. –

+1

계산기로 면적을 두 번 확인했습니다 : √3 ÷ 4 × 3.5² = 5.304405598 Can 책의 답을 다시 한번 확인해보십시오. 어딘가에 오타가있을 수 있습니다. – Boris

+0

그리고 확신하기 위해 [formula] (http://www.mathwords.com/a/area_equilateral_triangle.htm)도 정확합니다 – AxelH

답변

3

난 당신이 책을주고 입력을 오해 생각합니다. 이 공식은 '3,5'대신 '3'을 입력으로 사용하면 작동합니다.

(sqrt(3)/4) * (3^2) = 3.89711431703

당신은 당신의 프로그램이 양쪽의 길이가 아닌 측면의 길이와 삼각형의 높이의 입력을 요구해야한다.

필요한 경우 다른 스캐너 입력에서 삼각형의 높이를 물을 수 있습니다.

+0

아 3,5의 쉼표가 오타인지 또는 무엇입니까 – Sikorski

+0

그 이유는 여기에 볼륨 공식을 이해하지 못했습니다! 멋지다. – AxelH

+0

Eddie에게 도움을 주셔서 감사합니다. 그러나이 책의 예제는 3,5를 입력하고 면적으로 3.89를 얻습니다. 나는 입력을 3으로 변경하는 것에 대해 말한 것을 시도했는데, 그 영역은 책의 예제와 맞지만, 그 책의 책은 19,48 대신에 11,69입니다. 그들은 두 배가 아닌 정수로 입력을 받아들이는데 뭔가 잘못 했습니까? 그리고 그것은 어떻게 든 수식을 편집해야한다는 것을 의미합니까? – Martin