• Viernes 8 de Noviembre de 2024, 11:36

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - rayman18

Páginas: [1]
1
Java / Re: Mostrar un numero en su equivalente en otra base
« en: Sábado 21 de Noviembre de 2009, 19:16 »
lo que he hecho es esto:

Código: Java
  1.  
  2.  public Numero convertirABase(byte base){
  3.          long n=Math.round(valor);      
  4.          double resultado=0;
  5.          int pos=1;    
  6.      
  7.          if(base>1 && base<10){
  8.             while(n!=0){
  9.                resultado= resultado + (n%base)*pos;
  10.                n=n/base;
  11.                pos=pos*10;
  12.             }
  13.          }
  14.          else System.out.println("la base debe estar entre 2 y 9");
  15.      
  16.          
  17.          return new Numero(resultado);
  18.       }
  19.     
  20.     
  21.  



Gracias por la ayuda

2
Java / Re: Mostrar un numero en su equivalente en otra base
« en: Sábado 21 de Noviembre de 2009, 13:46 »
Aqui dejo el algoritmo de resolucion, pero no consigo escribirlo en codigo.

Código: Text
  1. public Numero convertirABase(byte base)
  2. ***Do-while, porque  no se conoce cuantas veces hay que dividir el numero***
  3.  
  4. n=redondear(valor)
  5. resultado=0
  6. peso=1  ***posicion del digito
  7.  
  8.  
  9. if(base>1 && base>10)
  10.     while(n!=0)
  11.         resultado= resultado + (n%base)*peso
  12.         n=n/base
  13.         peso=peso*10
  14. else
  15.     print"la base debe estar entre 2 y 9"
  16.  
  17. retunr new Numero(resultado)
  18.  

3
Java / Mostrar un numero en su equivalente en otra base
« en: Sábado 21 de Noviembre de 2009, 13:33 »
Hola a todos, soy nuevo en el foro y acudo a vosotros en busca de ayuda.

Tengo que realizar un metodo de una clase Numero(con un atributo valorde tipo double) que sea capaz de mostrar un numero en su equivalente en otra base b, entre 2 y 9.

Para convertir un número decimal a otra base hay que seguir los siguientes pasos:

-- Al dividir el número sucesivamente por la base b, encontramos que los restos que obtenemos son los dígitos del nuevo número en orden reciente de posición y los cocientes (de la división entera) en cada iteración son la parte del número N que queda por cambiar de base.

---Cada resto debe añadirse en la posición más significativa del nuevo número.

---El proceso termina cuando nuestro número N queda reducido a 0.

Por ejemplo 8 en base 10 es igual a 1000 en base 2. Se pide un método que devuelva el entero más próximo al valor de la clase Numero convertido a otra base, la cual se indica por parámetro.
Así, el método tendrá esta cabecera:


public Numero convertirABase(byte base)




Alguien me puede echar una mano?¿

Páginas: [1]