Multiplicación Rusa en Android Studio utilizando Recursividad

En este artículo encontrarás la aplicación de la multiplicación rusa utilizando recursividad en Android Studio para reforzar tus conocimientos en el tema, entonces empecemos.



El resultado final de la aplicación será la siguiente. 



Para ello utilizaremos los elementos de diseño como son: TextView, EditText, Button, entre otros. Claro que hay distintas formas en que puedes aplicar el diseño de tu aplicación según como lo desees.

Te recomiendo utilizar el Android Studio en su última versión hay muchos componentes que han mejorado, puedes descargarlo de su página oficial (clic aquí), si tienes algún problema al momento de instalarlo puedes dejarme un comentario para poder apoyarte.

En este ejercicio puedes crear una actividad en blanco o también una actividad básica ya predeterminada.

Dentro del xml de la actividad creada debes agregar el siguiente código:

 

   

      

      

      

      

      

      

      

      

      
   
      


Del mismo modo una vez diseñado correctamente tu xml, puedes pasar a la codificación en java dentro del paquete java de tu actividad, a continuación el código recursivo para la multiplicación rusa que de seguro te interesará.

   public String recursivoMultiplicacionRusa(int a, int b, int c) {
      if(a == 0) {
         return "El resultado de la multiplicación de " + c;
      } else {
         if(a % 2 != 0) {
            c = c + b;
         }
         return recursivoMultiplicacionRusa(a / 2, b * 2, c);
      }
   }

Ahora el código completo de la actividad con código java es el siguiente:
   
   package tucafejava.blogspot.multiplicacionrusaapp;

   import android.os.Bundle;
   import androidx.appcompat.app.AppCompatActivity;
   import androidx.appcompat.widget.Toolbar;
   import android.view.View;
   import android.widget.Button; 
   import android.widget.EditText;
   import android.widget.TextView;

   public class MainActivity extends AppCompatActivity {
      private EditText eMultiplicando;
      private EditText eMultiplicador;
      private Button bResultado;
      private TextView tResultado;
      
      @Override
      protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.activity_main);
         Toolbar toolbar = findViewById(R.id.toolbar);
         setSupportActionBar(toolbar);

         eMultiplicando = (EditText) findViewById(R.id.eMultiplicador);
         eMultiplicador = (EditText) findViewById(R.id.eMultiplicando);
         bResultado = (Button) findViewById(R.id.bResultado);
         tResultado = (TextView) findViewById(R.id.tResultado);

         bResultado.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
               String resultado = recursivoMultiplicacionRusa(Integer.parseInt(eMultiplicando.getText().toString()), Integer.parseInt(eMultiplicador.getText().toString()), 0);
               tResultado.setText(resultado);
            }
         });
      }

      public String recursivoMultiplicacionRusa(int a, int b, int c) {
         if(a == 0) {
            return "El resultado de la multiplicación de " + c;
         } else {
            if(a % 2 != 0) {
            c = c + b;
         }
            return recursivoMultiplicacionRusa(a / 2, b * 2, c);
         }
      }
   }




La aplicación mostrará el resultado en la parte inferior. Si deseas descargar el código haz clic aquí.


Espero haya sido de tu interés, no olvides dejar tu comentario para poder seguir creciendo y compartir con los tuyos en las redes sociales. Si tienes algún tema que deseas que publique, puedes comentarlo o enviarlo a través del formulario de contacto. Un Saludo cordial.

Comentarios

  1. Men la neta no entiendo la recursividad, mi profa sacó su clase de aquí, ayudame porfa

    ResponderEliminar
    Respuestas
    1. En realidad hay más temas de recursividad por si deseas puedes leerlos.

      Eliminar

Publicar un comentario

Entradas populares de este blog

Personaliza tus reportes PDF desde PHP con la librería FPDF

Practica de Diagrama de Flujo Intermedio - Resueltos

Ejercicios Básicos para aprender a programar en Android Studio [Java y Kotlin]