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    

12 comentarios:

  1. en realidad me sirvio mucho gracias

    ResponderEliminar
  2. Muchas gracias amigo. Excelente blog y excelente entrada.

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

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

    ResponderEliminar
  5. en la primera asignacion es num=TRUCN? solo eso?

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

    ResponderEliminar
  7. Excelente amigo me haz salvado el dia..

    ResponderEliminar
  8. Buenas necesito ayuda para resolver el siguiente ejercicio en dfd
    Tomar la parte entera, convertirla y mostrarla en su equivalente representativo digital
    construido con caracteres, ejemplo, 5.48 como datos de entrada, salida esperada:
    00000000
    0
    00000000
    0
    00000000

    ResponderEliminar
  9. ingrese 2 numeros base y altura asegurese de que ambos sean mayores a 10, calcule el area del triangulo muestrelo en pantalla

    ResponderEliminar
  10. compañero necesito el seudocodigo pero pseint te agradeseria mucho

    ResponderEliminar
  11. sera que el codigo en pseint esta correcto mira
    DECIMAL A BINARIO
    Algoritmo que te permita convertir un numero decimal a binario en pseint.

    Proceso Decimal_Binario
    Escribir "Ingresar un numero decimal"
    definir dec Como Entero
    Leer dec
    bin<-0
    i<-0
    si dec=1 entonces
    mostrar dec
    FinSi
    Repetir
    r<-dec mod 2
    bin<-bin+10^i*r
    i<-i+1
    dec<-trunc(dec/2)
    Hasta Que dec=1
    bin<-bin+10^i
    escribir "Convertido a binario es:"
    Mostrar bin

    ResponderEliminar