elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Cambiar base en javascript
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Cambiar base en javascript  (Leído 6,315 veces)
Leber


Desconectado Desconectado

Mensajes: 338


"Fracta, non verba"


Ver Perfil WWW
Cambiar base en javascript
« en: 1 Octubre 2007, 20:21 pm »

Muy buenas, señores:

La duda va relacionada con una aplicacion que quiero hacer, la cual deberia cambiar un numero a la base que le dijeses: octal, decimal o hexadecimal.

Hice el archivo html,el cual te pidiera el numero, y la base. A este archivo HTML, lo enlazo con un archivo .js, el cual se encarga de elegir la base, mediante un switch, y realiza las operaciones. Luego en el html llamo la funcion dentro del script.

La duda viene a que no se como cambiar de base los numeros, he buscado bastante, y encontre el toString que no se muy bien si lo podria usar para estos fines.

¿Podrian echarme una mano?

Gracias de antemano


En línea

"Solo los tontos carecen de preucupaciones." Johann Wolfgang Goethe
Ragnarok
Colaborador
***
Desconectado Desconectado

Mensajes: 4.590


Shrödingerificado


Ver Perfil
Re: Cambiar base en javascript
« Respuesta #1 en: 1 Octubre 2007, 22:14 pm »

Empieza por algo sencillo, como cambiar de base entre octal y hexadecimal. Busca información y haz preguntas más concretas.

toString no tengo ni idea de para qué querrías usarlo, a parte de para dar una vuelta convirtiendo todo a string como paso intermedio que casi complica más las cosas de lo que pudiera facilitarlas.


En línea

No olvidéis leer las normas generales, además de las específicas de cada tablón.sgae, ladrones
sch3m4
Ex-Staff
*
Desconectado Desconectado

Mensajes: 1.608

Nihil est in intelectu quod prius not fuerit insen


Ver Perfil WWW
Re: Cambiar base en javascript
« Respuesta #2 en: 1 Octubre 2007, 23:07 pm »

Es mejor que empieces con lo que te dice Ragnarok

Solo tienes que saber pasar de base 10 a base N, y de base N a base 10, ya que para pasar de base M a base N, has de pasar el numero expresado en base M a base 10, y luego pasarlo a base N.



En línea

SafetyBits

"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.(..
Ragnarok
Colaborador
***
Desconectado Desconectado

Mensajes: 4.590


Shrödingerificado


Ver Perfil
Re: Cambiar base en javascript
« Respuesta #3 en: 2 Octubre 2007, 07:12 am »

En realidad para pasar de octal a hexadecimal no necesita pasar a decimal para nada, creo que le complica las cosas bastante a menos que utilice parseInt(str,base), que no sé si podrá usar.

De lo que me acabo de dar cuenta es de que toString sí puede ser útil, es más, en hexadecimal sólo va a poder representarlo en forma de strings.
En línea

No olvidéis leer las normas generales, además de las específicas de cada tablón.sgae, ladrones
sirdarckcat
Aspirante a supervillano
Colaborador
***
Desconectado Desconectado

Mensajes: 7.029


No estoy loco, soy mentalmente divergente


Ver Perfil WWW
Re: Cambiar base en javascript
« Respuesta #4 en: 2 Octubre 2007, 07:47 am »

Hola

Para pasar de hexadecimal a decimal, es asi:
Código
  1. decimal=eval("0x"+hex);

Para pasar de octal a decimal, es asi:
Código
  1. decimal=eval("0"+octal);

Para pasar de decimal a hexadecimal numeros entre 0 y 4095 puedes hacerlo asi:
Código
  1. hex=escape(String.fromCharCode((1<<12)+decimal)).slice(3)//donde cambias decimal por tu numero.

Para hacer el programa completo sinembargo, tendrás que hacerlo con divisiones, modulos, etc..

Lo que te mostre son truquitos que he usado para acelerar este proceso xD, pero debes hacer validaciones antes (una simle regexp).

Saludos!!
« Última modificación: 2 Octubre 2007, 07:48 am por sirdarckcat » En línea

Leber


Desconectado Desconectado

Mensajes: 338


"Fracta, non verba"


Ver Perfil WWW
Re: Cambiar base en javascript
« Respuesta #5 en: 2 Octubre 2007, 20:15 pm »

Señores, les pido disculpas, me lei y ademas fuy muy poco conciso, llevo la tarde dandole vueltas al tema, y escribiendo en un papel lo que quiero hacer, y bueno empeze a sentarme ahora mismo.

Ahora sere más explicito:


Veran, la aplicacion pide dos numeros:

n1=prompt('Da numero: ');
base=prompt('Da la base: ');

La base es de 1 hasta 16, lo que hace la aplicacion es hacer el resto, es decir, el en switch tengo, por ejemplo en el case 3:


case '3': document.write(parseInt(n1) % parseInt(base))

Aqui se hace el resto, sino es 0, he creado un array, el cual manejo como recoger de nº, es decir, si se hace el resto de la division de 9/2, da "1", ese "1" lo envio a la posicion 0 del array, el cual dispone de 20 compartimentos.


Si no es 0, como dije, hago un if, el cual si el resultado no es 0, se le asigna al array[0] el resultado que haya dado, y continua haciendo la operacion hasta que no sea posible ir mas alla, o sencillamente que no se pueda.

Por ejemplo en la division de 9/2, al dar resto 1, me pasaria , ya que estoy diviendo entre 2, y este ya es un numero mas grande que "1". Estoy usando la sentencia IF para esto, y que a final, me visualize el array entero, es decir, quiza el resultado despues de varias divisiones hasta que no se ha podido mas ha dado: "01001"

No se si estoy abusando demasiado del IF o me estoy complicando la vida y hay un modo mas sencillo de hacerlo. Tambien habia pensado en el while, pero bien.   Bueno, no quiero darles mas la tabarra, gracias por haber respondido antes y por no haber sido mas preciso.

Saludos
« Última modificación: 2 Octubre 2007, 20:18 pm por Leber » En línea

"Solo los tontos carecen de preucupaciones." Johann Wolfgang Goethe
Ragnarok
Colaborador
***
Desconectado Desconectado

Mensajes: 4.590


Shrödingerificado


Ver Perfil
Re: Cambiar base en javascript
« Respuesta #6 en: 2 Octubre 2007, 22:26 pm »

No sé los demás, pero yo me he hecho un lío, está bien describir el problema, la solución, los errores... pero describir el código es demasiado.

Mira que bonito lo ha puesto sirdarckcat con sus colores y todo.
En línea

No olvidéis leer las normas generales, además de las específicas de cada tablón.sgae, ladrones
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Como cambiar el cursor de un texbox con javascript?
Desarrollo Web
morenochico 4 4,661 Último mensaje 4 Febrero 2011, 20:46 pm
por RyogiShiki
Que es eso de especificar una base con parseInt en javascript
Desarrollo Web
Cannabinnol 2 2,701 Último mensaje 30 Diciembre 2012, 22:13 pm
por Cannabinnol
cambiar propiedad css-javascript
Desarrollo Web
basickdagger 7 4,642 Último mensaje 10 Septiembre 2013, 00:21 am
por 1mpuls0
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines