--------------------------------------------------------------------------------
UtilizaCaculadora.java (Parte de Interface/Funcionalidades)
--------------------------------------------------------------------------------
package Calculando;
import javax.swing.JOptionPane;
public class UtilizaCaculadora {
public static void main(String[] args) {
Calculadora c1= new Calculadora();
String men = JOptionPane.showInputDialog(null,"Digite a opção:\n\n0. + , - , * , /\n1. 1/X\n2. X²\n3. x³\n4. X^Y\n5. V¯\n6. ³V¯\n7. ×V¯\n8. sin\n9. cos\n10. tan\n11. log\n12. ln\n13. X!\n14. Bin p/ Dec\n15. Bin p/ Oct\n16. Bin p/ Hex\n17. Dec p/ Bin\n18. Dec p/ Oct\n19. Dec p/ Hex\n20. Oct p/ Bin\n21. Oct p/ Dec\n22. Oct p/ Hex\n23. Hex p/ Bin\n24. Hex p/ Dec\n25. Hex p/ Oct","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
int menu = Integer.parseInt(men);
switch (menu){
case 0:{
String a=JOptionPane.showInputDialog(null,"Digite O Primeiro Número","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
double num = Double.parseDouble(a);
c1.setOperando1(num);
String op=JOptionPane.showInputDialog(null,"Digite o sinal","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
char opcao= ' ';
opcao=op.charAt(0);
String b=JOptionPane.showInputDialog(null,"Digite o Segundo Número","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
double num2 = Double.parseDouble(b);
c1.setOperando2(num2);
if(opcao=='+')
c1.soma();
if (opcao=='-')
c1.subitrai();
if (opcao=='*')
c1.multiplica();
if(opcao=='/')
c1.divide();
JOptionPane.showMessageDialog(null,c1.getResultado(),"Resultado",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
break;
}
case 1:{
String inv = JOptionPane.showInputDialog(null,"Digite O Número A Ser Invertido","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
double invertido = Double.parseDouble(inv);
c1.setOperando3(invertido);
c1.inverte();
JOptionPane.showMessageDialog(null,c1.getResultadoCientifico(),"RESULTADO",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
}
case 2 :{
String q = JOptionPane.showInputDialog(null,"Digite O Número Para Calcular O Qudrado","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
double quad = Double.parseDouble(q);
c1.setOperando3(quad);
c1.quadrado();
JOptionPane.showMessageDialog(null,c1.getResultadoCientifico(),"RESULTADO",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
}
case 3:{
String c = JOptionPane.showInputDialog(null,"Digite O Número Para Calcular O Cubo","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
double cbo = Double.parseDouble(c);
c1.setOperando3(cbo);
c1.cubo();
JOptionPane.showMessageDialog(null,c1.getResultadoCientifico(),"RESULTADO",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
break;
}
case 4:{
String p = JOptionPane.showInputDialog(null,"Digite O Primeiro Número","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
String en =JOptionPane.showInputDialog(null,"Digite O Primeiro Número","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
double pot = Double.parseDouble(p);
double cia = Double.parseDouble(en);
c1.setOperando3(pot);
c1.setOperando4(cia);
c1.potencia();
JOptionPane.showMessageDialog(null,c1.getResultadoCientifico(),"RESULTADO",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
break;
}
case 5:{
String r = JOptionPane.showInputDialog(null,"Digite O Número Para Calcular A Raiz Quadrada","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
double z = Double.parseDouble(r);
c1.setOperando3(z);
c1.raizQuadrada();
JOptionPane.showMessageDialog(null,c1.getResultadoCientifico(),"RESULTADO",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
break;
}
case 6:{
String rt = JOptionPane.showInputDialog(null,"Digite O Número Para Calcular A Raiz Cúbica","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
double rc = Double.parseDouble(rt);
c1.setOperando3(rc);
c1.raizCubica();
JOptionPane.showMessageDialog(null,c1.getResultadoCientifico(),"RESULTADO",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
break;
}
case 7:{
String rr = JOptionPane.showInputDialog(null,"Digite A Base Para Calcular A Raiz","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
double ra = Double.parseDouble(rr);
c1.setOperando3(ra);
String rrr =JOptionPane.showInputDialog(null,"Digite o Índice Para Calcular A Raiz");
double s = Double.parseDouble(rrr);
c1.setOperando4(s);
c1.raizQualquer();
JOptionPane.showMessageDialog(null,c1.getResultadoCientifico(),"RESULTADO",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
break;
}
case 8:{
String se = JOptionPane.showInputDialog(null,"Digite O Número Para Calcular O Seno","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
double sen = Double.parseDouble(se);
c1.setOperando3(sen);
c1.seno();
JOptionPane.showMessageDialog(null,c1.getResultadoCientifico(),"RESULTADO",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
break;
}
case 9:{
String co = JOptionPane.showInputDialog(null,"Digite O Número Para Calcular O Cosseno","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
double cos = Double.parseDouble(co);
c1.setOperando3(cos);
c1.cosseno();
JOptionPane.showMessageDialog(null,c1.getResultadoCientifico(),"RESULTADO",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
break;
}
case 10:{
String t = JOptionPane.showInputDialog(null,"Digite O Número Para Calcular A Tangente","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
double tg = Double.parseDouble(t);
c1.setOperando3(tg);
c1.tangente();
JOptionPane.showMessageDialog(null,c1.getResultadoCientifico(),"RESULTADO",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
break;
}
case 11:{
String l = JOptionPane.showInputDialog(null,"Digite O Número Para Calcular O Logaritimo","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
double log = Double.parseDouble(l);
c1.setOperando3(log);
c1.logaritimo();
JOptionPane.showMessageDialog(null,c1.getResultadoCientifico(),"RESULTADO",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
break;
}
case 12:{
String nep = JOptionPane.showInputDialog(null,"Digite O Número Para Calcular O Logaritimo Neperiano","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
double ln = Double.parseDouble(nep);
c1.setOperando3(ln);
c1.neperiano();
JOptionPane.showMessageDialog(null,c1.getResultadoCientifico(),"RESULTADO",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
break;
}
case 13:{
String ft = JOptionPane.showInputDialog(null,"Digite O Número Para Calcular O Fatorial","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
double fat = Double.parseDouble(ft);
c1.setOperando3(fat);
c1.fatorial();
JOptionPane.showMessageDialog(null,c1.getResultadoCientifico(),"RESULTADO",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
break;
}
case 14:{
String q = JOptionPane.showInputDialog(null,"Digite O Número Na Base Binária Para Convertê-lo em Decimal","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
int bindec = Integer.parseInt(q,2);
JOptionPane.showMessageDialog(null,bindec,"RESULTADO",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
break;
}
case 15:{
String binoct = JOptionPane.showInputDialog(null,"Digite O Número Na Base Binária Para Convertê-lo em Octal","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
int bioc = Integer.parseInt(binoct,2);
JOptionPane.showMessageDialog(null,Integer.toOctalString(bioc),"RESULTADO",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
break;
}
case 16:{
String binhex = JOptionPane.showInputDialog(null,"Digite O Número Na Base Binária Para Convertê-lo em Hexadecimal","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
int binh = Integer.parseInt(binhex,2);
JOptionPane.showMessageDialog(null,Integer.toHexString(binh),"RESULTADO",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
break;
}
case 17:{
String bi = JOptionPane.showInputDialog(null,"Digite O Número Na Base Decimal Para Convertê-lo em Binário","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
int bin=Integer.parseInt(bi);
JOptionPane.showMessageDialog(null,Integer.toBinaryString(bin),"RESULTADO",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
break;
}
case 18:{
String sc = JOptionPane.showInputDialog(null,"Digite O Número Na Base Decimal Para Convertê-lo em Octal","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
int oct=Integer.parseInt(sc);
JOptionPane.showMessageDialog(null,Integer.toOctalString(oct),"RESULTADO",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
break;
}
case 19:{
String he = JOptionPane.showInputDialog(null,"Digite O Número Na Base Decimal Para Convertê-lo em Hexadecimal","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
int hex=Integer.parseInt(he);
JOptionPane.showMessageDialog(null,Integer.toHexString(hex),"RESULTADO",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
break;
}
case 20:{
String octbin = JOptionPane.showInputDialog(null,"Digite O Número Na Base Octal Para Convertê-lo em Binário","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
int ocbi = Integer.parseInt(octbin,8);
JOptionPane.showMessageDialog(null,Integer.toBinaryString(ocbi),"RESULTADO",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
break;
}
case 21:{
String p = JOptionPane.showInputDialog(null,"Digite O Número Na Base Octal Para Convertê-lo em Decimal","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
int octdec = Integer.parseInt(p,8);
JOptionPane.showMessageDialog(null,octdec,"RESULTADO",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
break;
}
case 22:{
String octhex = JOptionPane.showInputDialog(null,"Digite O Número Na Base Octal Para Convertê-lo em Hexadecimal","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
int octh = Integer.parseInt(octhex,8);
JOptionPane.showMessageDialog(null,Integer.toHexString(octh),"RESULTADO",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
break;
}
case 23:{
String hexbin = JOptionPane.showInputDialog(null,"Digite O Número Na Base Hexadecimal Para Convertê-lo em Binário","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
int hebi = Integer.parseInt(hexbin,16);
JOptionPane.showMessageDialog(null,Integer.toBinaryString(hebi),"RESULTADO",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
break;
}
case 24:{
String w = JOptionPane.showInputDialog(null,"Digite O Número Na Base Hexadecimal Para Convertê-lo em Decimal","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
int hexdec = Integer.parseInt(w,16);
JOptionPane.showMessageDialog(null,hexdec,"RESULTADO",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
break;
}
case 25:{
String hexoct = JOptionPane.showInputDialog(null,"Digite O Número Na Base Hexadecimal Para Convertê-lo em Octal","Calculadora Científica",JOptionPane.QUESTION_MESSAGE);
int hect = Integer.parseInt(hexoct,16);
JOptionPane.showMessageDialog(null,Integer.toOctalString(hect),"RESULTADO",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
break;
}
default:
JOptionPane.showMessageDialog(null,"Numero Inválido","Argumento Inválido",JOptionPane.WARNING_MESSAGE);
}//switch
} //main
}//class
-------------------------------------------------------------------------------
Calculadora.java (Parte onde são efetuatos os cálcucos)
--------------------------------------------------------------------------------
package Calculando;
public class Calculadora {
String c="";
int b=0;
private double operando1=0;
private double operando2=0;
private double operando3=0;
private double operando4=0;
private double resutadoCientifico=0;
private double resultado=0;
protected void setOperando1(double n){
operando1=n;
}
protected void setOperando2(double n){
operando2=n;
}
protected void setOperando3(double n){
operando3=n;
}
protected void setOperando4(double n){
operando4=n;
}
protected double getResultado(){
return resultado;
}
protected double getResultadoCientifico(){
return resutadoCientifico;
}
public void soma(){
resultado=operando1+operando2;
}
public void subitrai(){
resultado=operando1-operando2;
}
public void multiplica(){
resultado=operando1*operando2;
}
public void divide(){
resultado=operando1/operando2;
}
public void inverte(){
resutadoCientifico=1.0/operando3;
}
public void quadrado(){
resutadoCientifico=Math.pow(operando3,2);
}
public void cubo(){
resutadoCientifico=Math.pow(operando3,3);
}
public void potencia(){
resutadoCientifico=Math.pow(operando3,operando4);
}
public void raizQuadrada(){
resutadoCientifico=Math.pow(operando3,0.5);
}
public void raizCubica(){
resutadoCientifico=Math.pow(operando3,0.3333333333333333);
}
public void raizQualquer(){
resutadoCientifico=Math.pow(operando3, 1.0/operando4);
}
public void seno(){
resutadoCientifico=Math.sin(operando3);
}
public void cosseno(){
resutadoCientifico=Math.cos(operando3);
}
public void tangente(){
resutadoCientifico=Math.tan(operando3);
}
public void logaritimo(){
resutadoCientifico=Math.log10(operando3);
}
public void neperiano(){
resutadoCientifico=Math.log(operando3);
}
public void fatorial (){
int x=1;
double numero = operando3;
for (double i=numero; i > 0; i--) {
x*=i;
}
resutadoCientifico=x;
}
}
Nenhum comentário:
Postar um comentário