Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 2
Ir a la página 1, 2  Siguiente
 
Reto De La Ultratumba
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Reto De La Ultratumba 
 
Hola amigos,

con este reto no tendréis un Orfèo que os pueda reconducir a la luz:

    Usar solamente 3 byte para almacenar en memoria la representación del número100000.


...usaríais solamente un stream?


" Lasciate ogni speranza, o voi che entrate. "
(Dante Alighieri - La divina commedia)
 



 
última edición por vuott el Lunes, 22 Septiembre 2014, 23:50; editado 3 veces 
vuott - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Reto De La Ultratumba 
 
Este reto me excede. Me rindo.

Vae Victis!
 



 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Reto De La Ultratumba 
 
shordi escribió: [Ver mensaje]
Este reto me excede. Me rindo.

Vae Victis!


Nooooo !    

Noli cedere, shordi !
 



 
última edición por vuott el Martes, 23 Septiembre 2014, 10:23; editado 2 veces 
vuott - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Reto De La Ultratumba 
 
Hola Vuott.

Yo (ya salió el yo)  intentaría crear retos algo más sencillos para un nivel de conocimiento general.
Difícil, naturalmente, sobre todo por la variedad de conocimiento que tenemos cada usuario de Gambas.

Por ahora te centras en binario. No sé si el tema de binario es algo que vayamos a tratar a diario en Gambas.
Debemos conocer el binario, naturalmente, pero a la larga tendríamos que hacer algo muy concreto para
trabajar con el, en una aplicación de escritorio. La variedad es grande, desde luego.

Saludos
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Reto De La Ultratumba 
 
No sé si van por ahí los tiros, pero un número entero ocupa 4 bytes, por lo tanto descartado.

Entonces, hay que usar una cadena que no exceda de 3 caracteres que son 3 bytes... pero las cadenas en gambas tienen un carácter adicional de "final de cadena", por lo que la cadena final sería de nuevo 4 bytes.

La única forma de representar ese número con el mínimo de caracteres es con la notación científica: 1E5  - Tres bytes sin contar el final de cadena. El método para almacenarlo en memoria es trivial (si es que esta es la solución).

100000 = 1 * 105 = 1e5

Saludos
 




===================
Jesús Guardón

Por favor, usemos el corrector ortográfico antes de pulsar el botón "Enviar".

"uo ǝs ʇɐu pıɟıɔıן ɐdɹǝupǝɹ ɐ dɹoƃɹɐɯɐɹ, soןo ɥɐʎ bnǝ dɹodouǝɹsǝןo"
 
jguardon - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Reto De La Ultratumba 
 
jguardon escribió: [Ver mensaje]

La única forma de representar ese número con el mínimo de caracteres es con la notación científica: 1E5  - Tres bytes sin contar el final de cadena. El método para almacenarlo en memoria es trivial (si es que esta es la solución).

100000 = 1 * 105 = 1e5

Hooola jguardon,

este reto espera una o mas respuestas.

Bueno, quien sabe si otros amigos propusieran otras soluciones posibles.

Saludos.
 



 
última edición por vuott el Martes, 23 Septiembre 2014, 22:59; editado 1 vez 
vuott - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Reto De La Ultratumba 
 
Bueno, el mi aporte es:

Public Sub Main()

  Dim bb As Byte[] = [&01, &86, &A0]


'...y en efecto:
    Print bb.Count

End

 



 
vuott - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Reto De La Ultratumba 
 
Hola

Imaginaba algo así, por supuesto, pero no identifico los dos últimos bytes. ¿Corresponden a valores ascii? No consigo identificar su significado.

[&01, &86, &A0]


Saludos
 




===================
Jesús Guardón

Por favor, usemos el corrector ortográfico antes de pulsar el botón "Enviar".

"uo ǝs ʇɐu pıɟıɔıן ɐdɹǝupǝɹ ɐ dɹoƃɹɐɯɐɹ, soןo ɥɐʎ bnǝ dɹodouǝɹsǝןo"
 
jguardon - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Reto De La Ultratumba 
 
Para insertar la representación del numero 10000 en 3 byte, yo usé la su representación hexadecimal: 0186A0 dividida en los sus 3 byte componentes. Despues he asignado cada byte componente a un elemento del array de tipo Byte[ ].
Es decir:
bb[0] = &01
bb[1] = &86
bb[2] = &A0


Si yo queiro utilizar practicamente esta representación hexadecimal, dividida en 3 byte, reconstruyo el numero decimal 100000 por ejemplo en esta manera:

Public Sub Main()

 Dim q As Byte
 Dim bb As Byte[] = [&01, &86, &A0]
 Dim ris As Integer
    
  Do
    ris = (ris * CInt(2 ^ 8)) Or bb[q]
    Inc q
  Loop Until q = 3

  Print ris

End

 



 
última edición por vuott el Lunes, 29 Septiembre 2014, 00:49; editado 1 vez 
vuott - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Reto De La Ultratumba 
 
... vais a salir locos, os lo aseguro....     
 



 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes Encuesta: Encuesta De Reto 1 v3ctor Retos de programación 3 Martes, 02 Septiembre 2014, 22:16 Ver último mensaje
jguardon
No hay nuevos mensajes Reto Volados razaAztk Retos de programación 2 Sabado, 20 Septiembre 2014, 18:49 Ver último mensaje
razaAztk
No hay nuevos mensajes El Reto Del Usuario Ceporro shordi Retos de programación 21 Lunes, 02 Febrero 2015, 14:14 Ver último mensaje
shordi
No hay nuevos mensajes El Reto De Los Calendarios shordi Retos de programación 3 Sabado, 11 Abril 2015, 09:59 Ver último mensaje
Shell
 

Publicar nuevo tema  Responder al tema  Página 1 de 2
Ir a la página 1, 2  Siguiente

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario



  

 

cron