20 de agosto de 2011

CalculadoraSimples.java (Versão 1.1)


Exemplo de uma calculadora simples, feito para a aula de Fundamentos de Programação II, usando JOptionPane.

/*
 * @author : Márcio "2M" Muhongo
 * Data: 1 de Agosto de 2011
 * Nome: Calculadora1.java
 **/

import javax.swing.*;

public class Calculadora1
{
 public static void main (String args[])
 {
  int opcao = Integer.parseInt((JOptionPane.showInputDialog("1- Soma [+] \n2- Subtração [-]\n3-     Multiplicação [*]\n4- Divisão (Resto) [%]\n5- Raiz Quadrada [Rad]\n6- Factorial [!]\n7- Potencia [x^y]\n8- Equação do 2º Grau\n0- Sair\n\nPor Favor Escolha Uma Opção")));
 
  switch(opcao)
  {
    case 0:
    System.exit(0);
    break;
   
    case 1:
    Soma();
    break;
   
    case 2:
    Subtracao();
    break;
   
    case 3:
    Multiplicacao();
    break;
   
    case 4:
    Divisao();
    break;
   
    case 5:
    Raiz();
    break;
   
    case 6:
    Factorial();
    break;
   
    case 7:
    Potencia();
    break;
   
    case 8:
    Equacao();
    break;
   
    default:
    JOptionPane.showMessageDialog(null, "Opção Invalida"," Opção Invalida" , JOptionPane.ERROR_MESSAGE );
  }
 }
 public static void Soma()
 {
   double a = Double.parseDouble(JOptionPane.showInputDialog(null,"Por Favor, Insira O 1º Número:"));
   double b = Double.parseDouble(JOptionPane.showInputDialog(null,"Por Favor, Insira O 2º Número:"));
   JOptionPane.showMessageDialog(null,a+" + "+b+" = "+(a+b));
 }

  public static void Subtracao()
 {
   double a = Double.parseDouble(JOptionPane.showInputDialog(null,"Por Favor, Insira O 1º Número:"));
   double b = Double.parseDouble(JOptionPane.showInputDialog(null,"Por Favor, Insira O 2º Número:"));
   JOptionPane.showMessageDialog(null,a+" - "+b+" = "+(a-b));
 }
 
  public static void Multiplicacao()
 {
   double a = Double.parseDouble(JOptionPane.showInputDialog(null,"Por Favor, Insira O 1º Número:"));
   double b = Double.parseDouble(JOptionPane.showInputDialog(null,"Por Favor, Insira O 2º Número:"));
   JOptionPane.showMessageDialog(null,a+" * "+b+" = "+(a*b));
 }
  public static void Divisao()
 {
   double a = Double.parseDouble(JOptionPane.showInputDialog(null,"Por Favor, Insira O 1º Número:"));
   double b = Double.parseDouble(JOptionPane.showInputDialog(null,"Por Favor, Insira O 2º Número:"));
   if(b==0)
   JOptionPane.showMessageDialog(null, "O Divisor Tem Que Ser Diferente De Zero"," ERRO" , JOptionPane.ERROR_MESSAGE );
   else
   JOptionPane.showMessageDialog(null,a+" % "+b+" = "+(a%b));
 }
 
  public static void Raiz()
 {
   double a = Double.parseDouble(JOptionPane.showInputDialog(null,"Por Favor, Insira 1 Número:"));
   JOptionPane.showMessageDialog(null,"A Raiz Quadrada De "+a+" = "+Math.sqrt(a));
 }

  public static void Factorial()
 {
   double a = Double.parseDouble(JOptionPane.showInputDialog(null,"Por Favor, Insira 1 Número:"));
   double fact = 1;
   int i;
   for(i=1;i<=a;i++)
   fact=fact*i;
   JOptionPane.showMessageDialog(null,"A Factorial De "+a+" = "+fact);
 }
 
  public static void Potencia()
 {
   double a = Double.parseDouble(JOptionPane.showInputDialog(null,"Por Favor, Insira A Base:"));
   double b = Double.parseDouble(JOptionPane.showInputDialog(null,"Por Favor, Insira O Expoente:"));
   JOptionPane.showMessageDialog(null,a+"^"+b+" = "+Math.pow(a,b));
 }
 
  public static void Equacao()
 { Double x1 = 0.0;
   Double x2 = 0.0;
 
   double a = Double.parseDouble(JOptionPane.showInputDialog(null,"Por Favor, Insira O Valor De A:"));
   double b = Double.parseDouble(JOptionPane.showInputDialog(null,"Por Favor, Insira O Valor De B:"));
   double c = Double.parseDouble(JOptionPane.showInputDialog(null,"Por Favor, Insira O Valor De C:"));
   double delta = Math.pow(b,2)-4*a*c;  
   double raiz=Math.sqrt(delta);
 
   if(delta<0.0)
   { JOptionPane.showMessageDialog(null, "Nao Possui Raizes Reais"," ERRO" , JOptionPane.ERROR_MESSAGE );
   }
   else if(delta==0.0)
   { x1=-b+raiz/(2*a);
    JOptionPane.showMessageDialog(null,"X1 = "+x1+"\n "+"X2 = "+x1);
   }
   else if(delta>0.0)
   {
    x1=-b+raiz/(2*a);
    x2=-b-raiz/(2*a);
    JOptionPane.showMessageDialog(null,"X1 = "+x1+"\n"+"X2 = "+x2);
   }
  }
}