2012-09-26 37 views
23

Tôi gặp sự cố khi chuyển đổi công thức này V = 4/3 π r3. Tôi đã sử dụng Math.PiMath.pow, nhưng đó là nơi vấn đề bắt đầu. Tôi gặp lỗi này (mọi lúc),cách sử dụng math.pi trong java

';' dự kiến ​​

Ngoài ra, biến đường kính không hoạt động. Có lỗi ở đó không?

import java.util.Scanner; 

import javax.swing.JOptionPane; 

public class NumericTypes  
{ 
    public static void main (String [] args) 
    { 
     double radius; 
     double volume; 
     double diameter; 

     diameter = JOptionPane.showInputDialog("enter the diameter of a sphere."); 

     radius = diameter/2; 

     volume = (4/3) Math.PI * Math.pow(radius, 3); 

     JOptionPane.showMessageDialog("The radius for the sphere is "+ radius 
+ "and the volume of the sphere is "); 
    } 
} 
+7

Vấn đề tiếp theo bạn sẽ gặp được trả lời ở đây: http://stackoverflow.com/questions/10455677/division-in-java –

Trả lời

39

Bạn thiếu toán tử phép nhân. Ngoài ra, bạn muốn làm 4/3 trong dấu phẩy động, không phải là số nguyên.

volume = (4.0/3) * Math.PI * Math.pow(radius, 3); 
      ^^ ^
1

Biến đường kính của bạn sẽ không hoạt động vì bạn đang cố lưu trữ chuỗi vào biến sẽ chỉ chấp nhận gấp đôi. Để cho nó để làm việc bạn sẽ cần phải phân tích nó

Ex: đường kính = Double.parseDouble (JOptionPane.showInputDialog();

1

Dưới đây là cách sử dụng của Math.PI để tìm "enter đường kính của một hình cầu." chu vi của vòng tròn Diện tích và Đầu tiên chúng ta hãy Radius như là một chuỗi trong Message Box và chuyển đổi nó thành số nguyên

public class circle { 

    public static void main(String[] args) { 
     // TODO code application logic here 

     String rad; 

     float radius,area,circum; 

     rad = JOptionPane.showInputDialog("Enter the Radius of circle:"); 

     radius = Integer.parseInt(rad); 
     area = (float) (Math.PI*radius*radius); 
     circum = (float) (2*Math.PI*radius); 

     JOptionPane.showMessageDialog(null, "Area: " + area,"AREA",JOptionPane.INFORMATION_MESSAGE); 
     JOptionPane.showMessageDialog(null, "circumference: " + circum, "Circumfernce",JOptionPane.INFORMATION_MESSAGE); 
    } 

} 
-1

Thay

volume = (4/3) Math.PI * Math.pow(radius, 3); 

Với:

volume = (4 * Math.PI * Math.pow(radius, 3))/3; 
+5

Có lẽ thêm một số giải thích về những gì bạn đã làm ở đây? – orhtej2

Các vấn đề liên quan