Pola i objętości figur

Pola i objętości figur

Program: obliczający pola i objętość figur.

Możliwe obliczenia dla figur:

  • kula,
  • graniastosłup prawidłowy czworokątny,
  • walec.

Kompilator: Eclipse

Galeria:

Program w akcji.

Kod programu:

import javax.swing.JOptionPane;
public class glowna {
	//Program obliczający pola jak i objętości róznych figur. (kula, graniastosłup, stożek)
   public static void main(String[] args) {
      char a = JOptionPane.showInputDialog("a - pole\nb - objetosc").charAt(0);
      switch (a) {
         case 'a' : {
            char aa = JOptionPane.showInputDialog("a - kula\nb - graniastoslup prawidlowy czworokatny\nc - walec").charAt(0);
            switch (aa){
               case 'a' : {
                  float r = Float.parseFloat(JOptionPane.showInputDialog("Podaj promien kuli"));
               System.out.print("Pole kuli o promieniu "+r+" wynosi "+(4*Math.PI*r*r));
                break;
             }
               case 'b' : {
                  float ga = Float.parseFloat(JOptionPane.showInputDialog("Podaj dlugosc krawedzi podstawy (a)")); 
                  float gh = Float.parseFloat(JOptionPane.showInputDialog("Podaj wysokosc graniastoslupa (h)"));
                  System.out.print("Pole graniastosłupa o wymiarach "+ga+"x"+ga+"x"+gh+" wynosi "+(2*ga*ga+4*ga*gh));
                break;
             }
               case 'c' : {
                  float r = Float.parseFloat(JOptionPane.showInputDialog("Podaj promien podstawy (r)"));
                  float h = Float.parseFloat(JOptionPane.showInputDialog("Podaj wysokosc (h)"));
                  System.out.print("Pole walca o promieniu podstawy "+r+" i wysokosci "+h+" wynosi "+
                  (2*Math.PI*r*r+2*Math.PI*r*h));
                break;
             }
            }
            break;
         }
         case 'b' : {
            char aa = JOptionPane.showInputDialog
            ("a - cylinder\nb - ostrosłup prawidłowy trójkątny\nc - sciety stozek").charAt(0);
            switch (aa){
               case 'a' : {
                  float r1 = Float.parseFloat(JOptionPane.showInputDialog("Podaj promien (r1) - od srodka do zewnetrznej 
                  krawedzi"));
                  float r2 = Float.parseFloat(JOptionPane.showInputDialog("Podaj promien (r2) - od srodka do wewnetrznej 
                  krawedzi"));
                  float h = Float.parseFloat(JOptionPane.showInputDialog("Podaj wysokosc (h)"));
                  System.out.print("Objetosc cylidra o wysokosci "+h+" r1 "+r1+" i r2 "+r2+" i grubosci "+(r1-r2)+" wynosi "+
                  (Math.PI*r1*r1*h-Math.PI*r2*r2*h));
                break;
             }
               case 'b' : {
                  float oa = Float.parseFloat(JOptionPane.showInputDialog("Podaj dlugosc krawedzi podstawy (a)"));
                  float h = Float.parseFloat(JOptionPane.showInputDialog("Podaj wysokosc (h)"));
                  System.out.print("Objetosc ostroslupa o podstawie kwadratu o boku "+oa+" i wysokosci "+h+" wynosi "+
                  ((h*oa*oa)/3));
                break;
             }
               case 'c' : {
                  float R = Float.parseFloat(JOptionPane.showInputDialog("Podaj promien podstawy (R)")); 
                  float h = Float.parseFloat(JOptionPane.showInputDialog("Podaj wysokosc (h)"));
                  float r = Float.parseFloat(JOptionPane.showInputDialog("Podaj promien sciecia(r)"));
                  System.out.print("Objetosc scietego stozka o wymiarach R "+R+" r "+r+" h "+h+" wynosi "+
                  (((Math.PI*h)*(R*R+R*r+r*r))/3));                  
                break;
             }
            }     
            break;
         }
      }
   }
}