Autor Tema: ejercicio ecuación simple con java  (Leído 7999 veces)

BigHelmet7

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 5
    • Ver Perfil
ejercicio ecuación simple con java
« en: 05 de Julio 2013, 20:07 »
Hola de nuevo !

hoy quería cumplir mi sueño y hacer mi primer programa en java, pero cómo no tengo fallos a la hora de compilar el código, lo que intento hacer es hacer esta formula x=a-b+c , con decimales, les adjunto el código. Muchas Gracias de antemano.
/*ECUACION SIMPLE*/

import  javax.swing.JOptionPane;

import java.math.BigDecimal;

import java.math.*;

public class EquacionSimple{
   
    public static void main( String args[] )
   {
       
       String strNumero1;
       
       String strNumero2;
       
       String strNumero3;
       
       int intNumero1;
       
       int intNumero2;
       
       int intNumero3;
             
       float Operación;
       
      strNumero1 = JOptionPane.showInputDialog( "Ingrese el numero 1" );
     
      strNumero2 = JOptionPane.showInputDialog( "Ingrese el numero 2" );
     
      strNumero3 = JOptionPane.showInputDialog( "Ingrese el numero 3" );
     
      BigDecimal bd= new BigDecimal ( intNumero1, MathContext.UNLIMITED);
     
      BigDecimal bd2= new BigDecimal ( intNumero2, MathContext.UNLIMITED);
     
      BigDecimal bd3= new BigDecimal ( intNumero3, MathContext.UNLIMITED);
     
      Operación = intNumero1 - intNumero2 + intNumero3;
     
      JOptionPane.showMessageDialog(
         null, "La ecuación simple es " + Operación, "Resultado,",
         JOptionPane.PLAIN_MESSAGE );
     System.exit( 0 ); 
  }
}
     
       
 
« Última modificación: 05 de Septiembre 2014, 10:06 por Alex Rodríguez »

Mastermind

  • Experto
  • *****
  • Mensajes: 536
    • Ver Perfil
Re:Como he de utilizar BigDecimal
« Respuesta #1 en: 05 de Julio 2013, 21:10 »
Hola BigHelmet, lo que no veo claro es para qué quieres usar BigDecimal, cuando java tiene tipos con muchos decimales como float o double que son los de uso más común.

Como sugerencias te diría: al poner código usa el botón # que está entre los iconos del editor que te aparece al escribir en el foro. Te aparecerá [ code] [ /code], lo que escribas entre esas dos etiquetas aparecerá luego como codigo.

Código: [Seleccionar]
Esto es código
Para aprender a programar en java con orden sigue el curso https://www.aprenderaprogramar.com/index.php?option=com_content&view=category&id=68&Itemid=188

Cuando crees programas java usa los tipos mas comunes y simples posibles, en este caso double o float antes que otros.

El programa usando double quedaría así, saludos:

Código: [Seleccionar]
/*ECUACION SIMPLE*/

import  javax.swing.JOptionPane;

//import java.math.BigDecimal;

//import java.math.*;

public class EquacionSimple{

    public static void main( String args[] )
    {

        String strNumero1;
        String strNumero2;
        String strNumero3;

        double Numero1;
        double Numero2;
        double Numero3;
        double Operacion;

        strNumero1 = JOptionPane.showInputDialog( "Ingrese el numero 1" );
        strNumero2 = JOptionPane.showInputDialog( "Ingrese el numero 2" );
        strNumero3 = JOptionPane.showInputDialog( "Ingrese el numero 3" );

        Numero1 = Double.parseDouble(strNumero1);
        Numero2 = Double.parseDouble(strNumero2);
        Numero3 = Double.parseDouble(strNumero3);

        /*
        BigDecimal bd= new BigDecimal ( intNumero1, MathContext.UNLIMITED);
        BigDecimal bd2= new BigDecimal ( intNumero2, MathContext.UNLIMITED);
        BigDecimal bd3= new BigDecimal ( intNumero3, MathContext.UNLIMITED);
         */       
       
        Operacion = Numero1 - Numero2 + Numero3;

        JOptionPane.showMessageDialog(
            null, "La ecuación simple es " + Operacion, "Resultado,",
            JOptionPane.PLAIN_MESSAGE );
        System.exit( 0 );
    }
}

BigHelmet7

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 5
    • Ver Perfil
Re:Como he de utilizar BigDecimal
« Respuesta #2 en: 05 de Julio 2013, 21:25 »
Hola Mastermind ,

antes que nada te agradezco tu ayuda :D .

Bueno el BigDecimal lo utilice más que nada porque estuve investigando y me dieron a entender que era la mejor manera de obtener un resultado en decimal, cómo podrás comprenderme soy un "n00b" en este mundo y empece con el curso que has nombrado, en fin ahora comprendo más el código que has puesto pero el "parse" no comprendo para que sirve y cuando intento ejecutar el código BlueJ me da este "error"
Código: [Seleccionar]
java.lang.NumberFormat:

For input string:"5,8" (in sun.misc.FloatingDecimal)


Muchas gracias por ayudarme nuevamente :D y gracias tambien por enseñarme a usar code .

Mastermind

  • Experto
  • *****
  • Mensajes: 536
    • Ver Perfil
Re:Como he de utilizar BigDecimal
« Respuesta #3 en: 06 de Julio 2013, 00:27 »
Cuando introduzcas números decimales debes hacerlo utilizando punto como separador en vez de comas, es decir introducir por ejemplo 5.8345 en vez de 5,8345

Si lo haces así no te saltará ese error.

El parse sirve para transformar algo que es String en double. Lo que introduce el usuario por teclado es tratado en este caso como String y para transformarlo en otro tipo de dato se usa el parse.

BigHelmet7

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 5
    • Ver Perfil
Re:Como he de utilizar BigDecimal
« Respuesta #4 en: 06 de Julio 2013, 12:52 »
Mastermind muchas gracias eres un genio :D ya puedo utilizar el programa mil gracias !

Un saludo

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".