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