练习2.2的数学公式 - Daniel Liang

时间:2016-11-30 10:41:58

标签: java

这是我在这里的第一篇文章。

我一直在寻找Daniel Liang(第10版)“Java编程入门”一书中试图做的一个练习的答案。

我认为我的大部分代码都是正确的,但我的答案与图书控制台示例不同。我使用了本书告诉我使用的数学公式,当我在控制台中输入相同的数字时,我的答案是不一样的。

更具体地说,它让我用这个公式来计算面积:面积=平方根(3)/ 4(边长)^ 2

我可能在添加该公式时做错了什么,但搜索人们一直建议使用相同的东西(Math.sqrt(3))

这是我的代码,任何帮助都是适用的:

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();      

    }

}

忘记添加我得到的内容以及本书的内容:

我明白了 输入边长和等边三角形的高度:3,5 该地区是:5.304405598179686 三角棱镜的体积为:18.565419593628903

这本书: 输入边长和等边三角形的高度:3,5 面积是:3.89 三角棱镜的体积为:19.48

1 个答案:

答案 0 :(得分:3)

我认为你误解了这本书给出的输入。如果你使用' 3'作为输入而不是' 3,5'。

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

你应该让你的程序要求输入边长,而不是边的长度和三角形的高度。

如果需要,可以在不同的扫描仪输入上询问三角形的高度。