• Publicidad

Mostrar número en binario

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

Mostrar número en binario

Notapor J.C.M.Castillo » 2006-01-15 06:49 @325

Desde un formulario paso un número en decimal a un CGI. Lo que deseo es que en este CGI el número aparezca en formato binario (01101001) con un print.
¿Cómo hago esta conversión?
J.C.M.Castillo
Perlero nuevo
Perlero nuevo
 
Mensajes: 15
Registrado: 2006-01-13 10:40 @486

Publicidad

Re: Mostrar número en binario

Notapor explorer » 2006-01-15 07:12 @342

Pues de varias formas... puedes calcularlo tu mismo:
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. use integer;
  2. $entrada = 1023;
  3. $salida  = '';
  4. while ( $entrada > 0 ) {
  5.     # En $salida vamos agregando los restos (0 o 1) de dividir
  6.     # la $entrada entre 2.
  7.     # Esto es lo mismo que extraer el último bit de $entrada.
  8.     $salida   = ($entrada % 2) . $salida;
  9.  
  10.     # Como ya está analizado el bit menos significativo, reducimos
  11.     # el valor de $entrada para la siguiente vuelta del bucle.
  12.     # Esto es lo mismo que desplazar el número binario una
  13.     # posición a la derecha.
  14.     $entrada /= 2;
  15. }
  16. print $salida;
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4

O puedes hacer que sea el propio sistema el que haga las cuentas por ti:
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. $entrada = 1023;
  2. printf("%016b\n", $entrada);
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4

Lo que estamos haciendo en la línea de arriba es pintar (printf) un número binario (%b) con 16 dígitos, con relleno de ceros (0) por la izquierda.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor J.C.M.Castillo » 2006-01-15 13:18 @596

Perfecto. Esto es lo que buscaba. Aunque me gusta más la segunda forma, la primera es muy interesante.

Muchas gracias
J.C.M.Castillo
Perlero nuevo
Perlero nuevo
 
Mensajes: 15
Registrado: 2006-01-13 10:40 @486


Volver a Básico

¿Quién está conectado?

Usuarios navegando por este Foro: Bing [Bot] y 1 invitado

cron