eu fiz um prototipo bem basico de uma calculadora, ela nao trabalha com 
empilhamento nem tem um layout bonito.mas executa as funcoes basicas e tb e 
muito boa para para fazer ajustes...


At 21:27 24/07/2001 -0300, you wrote:
>Olá Pessoal,
>
>Sou Novo em java, estou usando Jbuilder e gostaria de saber se alguém tem
>algo pronto para uma calculadora
>simples
>
>vou ter os botões (-  /   *  +  e M+, M- MC)
>se alguém tive algo parecido.
>
>Pessoal obrigadão
>
>Paulo Fernando
>[EMAIL PROTECTED]
>
>
>
>------------------------------ LISTA SOUJAVA ----------------------------
>http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP
>dúvidas mais comuns: http://www.soujava.org.br/faq.htm
>regras da lista: http://www.soujava.org.br/regras.htm
>para sair da lista: envie email para [EMAIL PROTECTED]
>-------------------------------------------------------------------------
//package calculadoramelhorada;

import java.awt.*;
import java.awt.event.*;
import java.applet.*;
import javax.swing.*;

public class Calculadora_Melhorada extends Applet {
Button N1 = new Button ("1");
Button N2 = new Button ("2");
Button N3 = new Button ("3");
Button N4 = new Button ("4");
Button N5 = new Button ("5");
Button N6 = new Button ("6");
Button N7 = new Button ("7");
Button N8 = new Button ("8");
Button N9 = new Button ("9");
Button N0 = new Button ("0");
Button Soma = new Button ("+");
Button Sub = new Button ("-");
Button Div = new Button ("/");
Button Mult = new Button ("*");
Button Igual = new Button("=");
Button Reset = new Button ("Reset");
TextField campo1 = new TextField(15);
TextField campo2 = new TextField(15);
Label Result= new Label();
boolean new_entry;
char teste;
double arg1, arg2;

public void init ()
{
add(campo1);
add(campo2);
add(N1);
add(N2);
add(N3);
add(N4);
add(N5);
add(N6);
add(N7);
add(N8);
add(N9);
add(N0);
add(Soma);
add(Sub);
add(Div);
add(Mult);
add(Igual);
add(Result);
add(Reset);
new_entry=true;
}
public boolean action (Event evt, Object arg)
{
  if(evt.target instanceof Button)
  {
    arg1=arg2=0.0;
    char keypress=((String) arg).charAt(0);
    if((keypress=='/')||(keypress=='*')||(keypress=='+')||(keypress=='-'))
      {
        teste=keypress;
        System.out.println(teste);
      }
    if(((keypress >='0')&& (keypress <='9'))|| (keypress=='.'))
      {
      if(new_entry)
        {
             if((teste=='/')||(teste=='*')||(teste=='+')||(teste=='-'))
           {
             campo2.setText((String) arg);
           }
           else
           {
             campo1.setText((String) arg);
           }
           new_entry=false;
        }
      else
         {
             if((teste=='/')||(teste=='*')||(teste=='+')||(teste=='-'))
             {
               campo2.setText(campo2.getText() + ((String) arg));
             }
           else
             {
               campo1.setText(campo1.getText() + ((String) arg));
             }
         }
      }
  if(arg.equals("="))
    {
      float i= Float.valueOf(campo1.getText()).floatValue();
      float j= Float.valueOf(campo2.getText()).floatValue();
      float n;

      if(teste=='+')
        {
          n=i+j;
          Result.setBounds(90,90,100,100);
          Result.setText(new Float(n).toString());
        }
      else if (teste=='-')
        {
          n=i-j;
          Result.setBounds(90,90,100,100);
          Result.setText(new Float(n).toString());
        }
      else if (teste=='*')
        {
          n=i*j;
          Result.setBounds(90,90,100,100);
          Result.setText(new Float(n).toString());
        }
      else if (teste=='/')
        {
          n=i/j;
          Result.setBounds(90,90,100,100);
          Result.setText(new Float(n).toString());
        }
    }
     else if (arg.equals("Reset"))
      {
      keypress=((String) arg).charAt(0);
      Result.setText("");
      teste=keypress;
      campo1.setText("");
      campo2.setText("");
      }
 }
   return true;
 }

}
------------------------------ LISTA SOUJAVA ----------------------------
http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
para sair da lista: envie email para [EMAIL PROTECTED]
-------------------------------------------------------------------------

Responder a