Ingresar dos numeros y realizar las operaciones sumar,resta,multiplicar,dividir

Hoy veremos un ejercicio, como realizar operaciones con dos números.
Ya vimos en otros ejemplos como hacíamos las operaciones aritméticas de sumar, resta, multiplicar y dividir, pero en este caso ingresaremos dos números y nos mostrara las cuatro operaciones al mismo tiempo.

Ingresar dos números y realizar las operaciones sumar,resta,multiplicar,dividir

Empezaremos con la parte gráfica osea hacer la parte que esta  como en la imagen de arriba les aclaro que la imagen que simboliza a la suma, resta, multiplicación y división debe ir guardada en la carpeta drawable si no estas familiarizado con esto, puedes descargar la aplicación que lo dejare al final y le echas un vistazo, pero recuerda copiar y comparar no es lo mismo 😉 .

activity_main

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_alignParentStart="true"
        android:layout_alignParentTop="true"
        android:layout_gravity="center_horizontal">


        <ImageView
            android:id="@+id/imageView2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_above="@+id/edtxtNumero1"
            android:layout_centerHorizontal="true"
            app:srcCompat="@drawable/operacion" />

        <TextView
            android:id="@+id/textView6"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_above="@+id/textView7"
            android:layout_alignParentStart="true"
            android:layout_marginBottom="16dp"
            android:layout_marginStart="24dp"
            android:text="Primer Numero"
            android:textSize="24sp"
            android:textStyle="bold" />

        <TextView
            android:id="@+id/textView7"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_above="@+id/btnLimpiar"
            android:layout_alignStart="@+id/textView6"
            android:text="Segundo Numero"
            android:textSize="24sp"
            android:textStyle="bold" />

        <EditText
            android:id="@+id/edtxtNumero1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBottom="@+id/textView6"
            android:layout_toEndOf="@+id/textView7"
            android:ems="10"
            android:inputType="number" />

        <EditText
            android:id="@+id/edtxtNumero2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBottom="@+id/textView7"
            android:layout_toEndOf="@+id/textView7"
            android:ems="10"
            android:inputType="number" />

        <TextView
            android:id="@+id/txtResultado"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:layout_centerHorizontal="true"
            android:layout_marginBottom="15dp"
            android:textSize="24sp" />

        <Button
            android:id="@+id/btnCalcular"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_above="@+id/txtResultado"
            android:layout_alignEnd="@+id/textView6"
            android:layout_marginBottom="103dp"
            android:text="CALCULAR"
            android:textStyle="bold" />

        <Button
            android:id="@+id/btnLimpiar"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignEnd="@+id/imageView2"
            android:layout_alignTop="@+id/btnCalcular"
            android:text="LIMPIAR"
            android:textStyle="bold" />
    </RelativeLayout>

</RelativeLayout>

 

Ahora revisaremos  la parte de nuestro código, te sugiero que no lo memorices.
Simplemente checalo y revisa la parte de las condicionales IF
y darte una idea de como funciona estos ejercicios.

MainActivity

public class MainActivity extends AppCompatActivity {
    Button limpiar;
    Button calcular;
    EditText numero1;
    EditText numero2;
    TextView resultado;

    String snumero1;
    String snumero2;
    String sresultado = "";

    AlertDialog.Builder dialog;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        limpiar = (Button) findViewById(R.id.btnLimpiar);
        calcular = (Button) findViewById(R.id.btnCalcular);
        numero1 = (EditText) findViewById(R.id.edtxtNumero1);
        numero2 = (EditText) findViewById(R.id.edtxtNumero2);
        resultado = (TextView) findViewById(R.id.txtResultado);

        limpiar.setEnabled(false);

        calcular.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                snumero1 = numero1.getText().toString();
                snumero2 = numero2.getText().toString();
                sresultado = "";
                if(snumero1.length() == 0 ){
                    dialog = new AlertDialog.Builder(MainActivity.this);
                    dialog.setTitle("Error");
                    dialog.setMessage("Ingresar el primer número");
                    dialog.setCancelable(false);
                    dialog.setPositiveButton("Cerrar", new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface dialogo, int id) {
                            dialogo.cancel();
                            numero1.requestFocus();
                        }
                    });
                    dialog.show();
                }else{
                    if(snumero2.length() == 0){
                        dialog = new AlertDialog.Builder(MainActivity.this);
                        dialog.setTitle("Error");
                        dialog.setMessage("Ingresar el segundo número");
                        dialog.setCancelable(false);
                        dialog.setPositiveButton("Cerrar", new DialogInterface.OnClickListener() {
                            public void onClick(DialogInterface dialogo, int id) {
                                dialogo.cancel();
                                numero1.requestFocus();
                            }
                        });
                        dialog.show();
                    }else {
                        double suma = Double.parseDouble(snumero1) + Double.parseDouble(snumero2);
                        if (suma % 1 == 0) { //Si es entero pero termina en .0
                            sresultado += snumero1 + " + " + snumero2 + " = " + (int) suma + "\n";
                        } else{
                            sresultado += snumero1 + " + " + snumero2 + " = " + suma + "\n";
                        }
                        double resta = Double.parseDouble(snumero1) - Double.parseDouble(snumero2);
                        if (resta % 1 == 0) { //Si es entero pero termina en .0
                            sresultado += snumero1 + " - " + snumero2 + " = " + (int) resta + "\n";
                        } else{
                            sresultado += snumero1 + " - " + snumero2 + " = " + resta + "\n";
                        }
                        double multiplicacion = Double.parseDouble(snumero1) * Double.parseDouble(snumero2);
                        if (multiplicacion % 1 == 0) { //Si es entero pero termina en .0
                            sresultado += snumero1 + " * " + snumero2 + " = " + (int) multiplicacion + "\n";
                        } else{
                            sresultado += snumero1 + " * " + snumero2 + " = " + multiplicacion + "\n";
                        }
                        if(Integer.parseInt(snumero2) == 0){
                            sresultado += snumero1 + " / " + snumero2 + " = (División entre cero) \n";
                        }else{
                            double division = Double.parseDouble(snumero1) / Double.parseDouble(snumero2);
                            if (division % 1 == 0) { //Si es entero pero termina en .0
                                sresultado += snumero1 + " / " + snumero2 + " = " + (int) division + "\n";
                            } else{
                                sresultado += snumero1 + " / " + snumero2 + " = " + division + "\n";
                            }
                        }
                        resultado.setText(sresultado);
                        limpiar.setEnabled(true);
                        calcular.setEnabled(false);
                    }
                }
            }
        });

        limpiar.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                limpiar_controles();
            }
        });
    }

    public void limpiar_controles(){
        numero1.setText("");
        numero2.setText("");
        resultado.setText("");
        limpiar.setEnabled(false);
        calcular.setEnabled(true);
        numero1.requestFocus();
    }
}

 

Con eso hemos terminado, así que les voy dejar a continuación el enlace de descarga, pero recuerda. Copiar no es lo mismo que comparar.

Nota:

Si vas a descargar la aplicación de ejemplo te sugiero que primero observes si tienes tu IDE actualizado, pues para este ejercicio nosotros utilizamos Android Studio 3.0.1.
Si usas una versión inferior talvez tengas problemas al momento de ejecutarlo.

Descargar Aquí

0

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *