[ Foro de Pascal ]

Construir función que reciba un word y devuelva su imagen(inverso) en otro word

27-Jul-2007 10:30
Homer A. Ramos
2 Respuestas

Hola de nuevo!

Bueno, pues al final me quedó programación y estoy estudiando desde ya para que no me coja el toro de nuevo :D

A ver, tengo una duda con respecto a un examen que he visto colgado en una página de Internet, es un examen de una universidad qué ahora no recuerdo. El problema a resolver sería: "Invierte las cifras de un número. Por ejemplo: f(123) = 321. Construye una función que reciba un Word y devuelva su imagen en otro Word."

Alguien me podría ayudar a hacerlo? Gracias.

28-Jul-2007 10:31
Nacho Cabanes (+84)

Yo me ayudaría de una cadena (string) de texto, que son fáciles de manejar cifra a cifra, aunque luego el resultado lo vuelvas a convertir a número. En ese caso, los pasos a dar serían estos:

Convertir el número a cadena
Crear una cadena auxiliar de la misma longitud (o mayor)
Desde i = 1 hasta longitud cadena
CadenaAuxiliar[longitud+1-i] = cadena[i]
FinDesde
Convertir CadenaAuxiliar a número

(es decir, en una cadena es fácil "darle la vuelta" recorriendo posición a posición con un "for", y si tiene 5 cifras, colocas la 1ª en la 5ª posición, la 2ª en la 4ª y así sucesivamente).

Si prefieres trabajar todo el tiempo con números, es algo más pesado: tienes que acordarte que la última cifra es (n mod 10), es decir, el resto de dividir el número entre 10; para la penúltima dividirías entre 10 y volverías a hallar el resto: ((n div 10) mod 10), y así sucesivamente:

734 mod 10 = 4

734 div 10 = 73
73 mod 10 = 3

73 div 10 = 7
7 mod 10 = 7

7 div 10 = 0 (terminado)

y cada vez que colocas una nueva cifra en el número de destino, irías multiplicando por 10 el número que llevabas y sumando la nueva cifra, así:

4

4 * 10 = 40
40 + 3 = 43

43*10 = 430
430 + 7 = 437

(terminado, no hay más cifras).

Suerte con ello!


31-Jul-2007 11:22
Homer A. Ramos

Muchas gracias por tu contesta. Voy a intentar implementarlo a ver que tal me sale jejeje. Esperemos que haciendo ejercicios, apruebe la asignatura. Tengo algunas dudas con ficheros, en estos días colgaré algunas para que me ayudéis a comprenderlo un poco mejor :D

Gracias!






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)