Programa C# para encontrar el equivalente binario de un entero usando recursividad

Dado un número entero, ahora convertimos el número entero dado en un número binario usando recursividad. La recursión es un método en el que una función se llama a sí misma directa o indirectamente y este tipo de función se conoce como función recursiva. Resuelve el problema de manera muy eficiente, como si encontráramos el equivalente binario de un número entero.

Ejemplos:

Input : 10
Output: 1010

Input : 11
Output: 1011

Acercarse: 

Para mostrar el equivalente binario de un entero usamos los siguientes pasos:

  • Si la condición se utiliza para verificar si el valor dado no es igual a cero.
  • Si la condición dada es verdadera, realice el módulo del valor por 2, luego sume el resultado del módulo a 10 y luego multiplique el valor del resultado con el valor de la función decimaltobinary().
  • Ahora repita el paso 2 hasta que el valor de la variable val sea mayor que cero.
  • Imprima la array en orden inverso ahora.
  • Y si la condición es falsa, ejecutará la sección else, es decir, devolverá 0

La siguiente imagen puede ayudarlo a comprender mejor el enfoque.

Consideremos que el número entero es 10. Ahora encontramos el equivalente binario de 10, entonces,

  • 10 % 2 + 10 * (10 / 2) % 2 devolverá 0
  • 5 % 2 + 10 * (5/2) % 2 devolverá 1
  • 2 % 2 + 10 * (2/2) % 2 devolverá 0
  • 1 % 2 + 10 * (1 / 2) % 2 devolverá 1

Así que el resultado final es 1010.

Ejemplo 1:

C#

// C# program to display the binary equivalent
// of an integer
using System;
  
class GFG{
  
// Driver code
public static void Main(string[] args)
{
      
    // Input
    int num = 15;
      
    decimaltobinary(num);
}
  
// Function to display the binary equivalent 
// of an integer
public static int decimaltobinary(int val)
{
    int binary;
      
    if (val != 0)
    {
        binary = (val % 2) + 10 * decimaltobinary(val / 2);
        Console.Write(binary);
        return 0;
    }
    else
    {
        return 0;
    }
}
}
Producción

1111

Ejemplo 2:

C#

// C# program to display the binary equivalent
// of an integer
using System;
  
class GFG{
    
// Function to display the binary equivalent 
// of an integer
public static int decimaltobinary(int val)
{
    int binary;
      
    if (val != 0)
    {
        binary = (val % 2) + 10 * decimaltobinary(val / 2);
        Console.Write(binary);
        return 0;
    }
    else
    {
        return 0;
    }
}
    
// Driver code
public static void Main(string[] args)
{
    int num;
      
    // Reading input from user
    Console.Write("Hi! Enter the number:");
    num = int.Parse(Console.ReadLine());
    decimaltobinary(num);
  
}
}

Producción:

Hi! Enter the number:10
1010

Publicación traducida automáticamente

Artículo escrito por pulamolusaimohan y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

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