| Ver tema anterior :: Ver siguiente tema | | Autor | Mensaje |
|---|
raffita_4
Registrado: 20 Nov 2013 Mensajes: 2
| Publicado: 20/11/2013 5:52 am | | | Título: Problemas con funcion recursiva |
| buenas...me plantaron un problema para hacer en matlab (no se si todos lo conocen o trabajaron con el)
Escriba una función recursiva abase10 que reciba como parámetro un número entero positivo N expresado en base b, y lo pase a base 10. El número N estará representado por un vector, donde cada elemento representa un dígito de N en base b.
Ejemplos: >> y= abase10([1, 0, 1, 0, 0], 2) y = 20 >> y= abase10([7, 4, 3],  y = 483
alguno puede ayudarme a resolverlo?? por favor..muchas gracias |
| | Volver arriba | |  | Masakre
Registrado: 06 Jun 2012 Mensajes: 245
| Publicado: 23/11/2013 1:27 pm | | | Título: |
| Una idea que podrías seguir:
- Recibes el vector N y b.
- Si size(N) es 0: --> devuelves y = 0
- Sino, haces esto: --> masSignificativo = N(1); --> N(1) = [] -->devuelves y = masSignificativo*b^(size(N)-1)+abase10(N)
Es decir, tomas el número del vector N que está en la posición 1, lo multiplicas por la base elevada al exponente que corresponde y le vas sumando lo que continúa para los números siguientes del vector N. De hecho cuando llamas nuevamente a la función, le pasas N, porque ya antes se borró el primer elemento. |
| | Volver arriba | |  | raffita_4
Registrado: 20 Nov 2013 Mensajes: 2
| Publicado: 25/11/2013 3:59 am | | | Título: |
| | muchas gracias por la ayuda |
| | Volver arriba | |  | | |
| No puede crear mensajes No puede responder temas No puede editar sus mensajes No puede borrar sus mensajes No puede votar en encuestas
|
|
| |