Pages

martes, 25 de diciembre de 2012

Ingrese un número y convierta a binario – Diagrama de Flujo

Problema
Ingrese un número y convierta a binario.

Solución
Este algoritmo recibe un numero decimal y lo convierte a número  binario.

Ejemplo
  • Entrada: 10
  • Salida: 1010
Se coloca un símbolo de Lectura para el ingreso de números por parte del usuario,el  cual captura dicho valor en la variable “Num”. Luego  aplicamos la función TRUNC para recibir solo números enteros, luego  inicializamos la variable “cad” con una cadena vacía.
Luego realizamos una comparación para verificar si el número es mayor a cero.
Si es Falso (No)   
    Verificamos si  ”Num” es cero 
        Si es Verdadero(Si),  muestra como resultado  ‘0’
Si es Falso (No),  entonces muestra el mensaje: “numero ingresado es negativo”
Si es Verdadero (Si) 
    Creamos un ciclo While con la condición  de que Num sea mayor a cero(Num>0)
        Verificamos el Valor de Num MOD 2 = 0
            Si es Verdadero(Si)
                Entonces concatenaremos en la variable “cad” el carácter ‘0’
            Si es Falso(No) 
Entonces concatenaremos en la variable “cad” el carácter ‘1’   
        Una vez terminado la comparación actualizamos el valor de  Num
                Num=TRUNC(Num/2)
Regresamos de nuevo a la condición del ciclo while esto lo repetiremos hasta que el valor de Num sea mayor a cero
Terminado el ciclo mostraremos la cadena de salida

Ejemplo
  • Entrada Num = 10
10 >0    10 MOD 2 =0 cad=’0’ Num=TRUNC(10/2)=5
5>0  5 MOD 2 = 1 cad=’1’ Num=TRUNC(5/2)=2
2 >0 2 MOD 2 =0 cad=’0’ Num=TRUNC(2/2)=1
1>0 1 MOD 2 = 1 cad=’1’ Num=TRUNC(1/2)=0
0 >0 (No)  sale del ciclo y muestra la cadena

  • Resultado  = 1010    

8 comentarios:

Anónimo dijo...

en realidad me sirvio mucho gracias

Anónimo dijo...

garciasssss

Richin dijo...

Muchas gracias amigo. Excelente blog y excelente entrada.

Anónimo dijo...

Qué explicación más sencilla y entendible, como principiante me quedó súper clara. Gracias Richin.

Anónimo dijo...

yo tengo una pregunta amigo y si el codigo binario saliera 110011001100, yo estoy batallando en eso no abria otro?

Anónimo dijo...

en la primera asignacion es num=TRUCN? solo eso?

Anónimo dijo...

yo tengo una pregunta amigo quiero resolver un algoritmo que reciba 2 numeros binarios y nos retorne su diferencia pero nose como

Oscar Hernandez dijo...

Excelente amigo me haz salvado el dia..

Publicar un comentario en la entrada