Ver Mensaje Individual
  #2 (permalink)  
Antiguo 20/04/2009, 15:11
tezcat
 
Fecha de Ingreso: noviembre-2008
Mensajes: 6
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: Leer un numero desde el teclado [AYUDA]

Segunda parte
Código:
private void foco(WindowEvent evt)
{
	BCE.requestFocus();
	}

    private void OperacionAction(ActionEvent evt){
    	JButton obj=(JButton) evt.getSource();
    	String texto=obj.getText();
    	if(ultima==1)
    		numoperandos++;
    	if(numoperandos==1){
    		operando1=Double.parseDouble(pantalla.getText());
    }
    else if(numoperandos==2)
    {
    	  operando2=Double.parseDouble(pantalla.getText());
    switch(op){
    case '+': operando1+=operando2;break;
    case '-': operando1-=operando2;break;
    case '*': operando1*=operando2;break;
    case '/': operando1/=operando2;break;
    case '=': operando1=operando2;break;
    case '%': operando1*=operando2;break;
    }

    pantalla.setText(Double.toString(operando1));
    numoperandos=1;}
    op=texto.charAt(0);
    ultima=2;
	}
	private void botonAction(ActionEvent evt){
		JButton aux=(JButton) evt.getSource();
		String texto=aux.getText();
		if(ultima!=1)
		{
			if(texto.compareTo("0")==0)
				return;
			pantalla.setText("");
			ultima=1;
			puntodecimal=false;
		}
		pantalla.setText(pantalla.getText()+texto);
	}
	private void puntoDecAction(ActionEvent evt)
	{
		if(ultima!=1)
		{
			//PROGRAMA EN JAVA----CALCULADORA PARCIAL
		pantalla.setText("0.");
		ultima=1;
		}

		else if(puntodecimal==false)
			   pantalla.setText(pantalla.getText()+".");
		puntodecimal=true;

	}
	private void botonC(ActionEvent evt)
	{
		pantalla.setText("0.");
		ultima=0;
		puntodecimal=false;
		op=0;
		numoperandos=0;
		operando1=0;
		operando2=0;
	}
	private void potencia(ActionEvent evt)
	{
		double respot;
		respot=Double.parseDouble(pantalla.getText());
		respot=respot*respot;
		pantalla.setText(""+respot);
	}
	private void cubo(ActionEvent evt)
	{
		double rescubo;
		rescubo=Double.parseDouble(pantalla.getText());
		rescubo=rescubo*rescubo*rescubo;
		pantalla.setText(""+rescubo);
	}
	private void raiz_cuadrada(ActionEvent evt)
	{
		double resraiz;
		resraiz=Double.parseDouble(pantalla.getText());
		if(resraiz<0)
			pantalla.setText("E");
		else if(resraiz>0)
				resraiz=Math.sqrt(resraiz);
		pantalla.setText(""+resraiz);
	}
	
	private void sin (ActionEvent evt)
	{
		double ressin;
		ressin=Double.parseDouble(pantalla.getText());
		
		if(ressin<0)
			pantalla.setText("E");
		else if(ressin>0)
				ressin=Math.sin(ressin);
		pantalla.setText(""+ressin);
	}

	private void cos (ActionEvent evt)
	{
		double rescos;
		rescos=Double.parseDouble(pantalla.getText());
		
		if(rescos<0)
			pantalla.setText("E");
		else if(rescos>0)
				rescos=Math.cos(rescos);
		pantalla.setText(""+rescos);
	}
	
	private void tan (ActionEvent evt)
	{
		double restan;
		restan=Double.parseDouble(pantalla.getText());
		
		if(restan<0)
			pantalla.setText("E");
		else if(restan>0)
				restan=Math.sin(restan);
		pantalla.setText(""+restan);
	}
	
	
	
	public static void main(String args[])
	{
		try
		{

			UIManager.setLookAndFeel(
		    UIManager.getSystemLookAndFeelClassName());}
		catch (Exception e)
		  {
			System.out.print("NO SE PUEDE CONTINUAR"+e);
		  }
		calculadora obj=new calculadora();
		obj.setVisible(true);
	    }
   }
Y he buscado en varias partes y me dicen ke use este codigo:

Código:
import java.io.*;
import java.util.*;

public class MyInput
{ 
  static private StringTokenizer stok;
  static private BufferedReader br
    = new BufferedReader(new InputStreamReader(System.in), 1);

public static double readDouble()
{ 
  double d = 0;
  try
  { 
    String str = br.readLine();
    stok = new StringTokenizer(str);
    d = new Double(stok.nextToken()).doubleValue();
  }
  catch (IOException ex)
  { 
    System.out.println(ex); 
  }
  return d;
}
}
y dicen que si lo quiero utilizar solamente tengo ke poner MyInput.readDouble
Pero le intento y no funciona

No se si me puedan ayudar el punto es ke kiero hacer operaciones desde el teclado no con el mouse

Saludos y gracias desde ya