Diferencia entre revisiones de «Fundamentos de programación/Tipos de datos estructurados/Evaluación»

Contenido eliminado Contenido añadido
Lsanabria (discusión | contribs.)
Lsanabria (discusión | contribs.)
Línea 80:
 
{{texto citado|
Escriba una función que reciba un número enteropositivo y que regrese una cadena de texto con la representación en carácteres de ese número. Para los propósitos de este ejercicio se puede suponer que la función nunca será invocada con números negativos.
}}
 
{{Cajón|Solución propuesta|
<pre>
// Subrutina auxiliar que recibe un entero menor a 10
// Por definir
// y regresa una cadena con el carácter correspondiente
// a ese número
cadena subrutina dígito_a_cadena (entero dígito)
 
cadena dígito_como_texto
 
según_sea dígito hacer
caso 0:
dígito_como_texto := "0"
caso 1:
dígito_como_texto := "1"
caso 2:
dígito_como_texto := "2"
caso 3:
dígito_como_texto := "3"
caso 4:
dígito_como_texto := "4"
caso 5:
dígito_como_texto := "5"
caso 6:
dígito_como_texto := "6"
caso 7:
dígito_como_texto := "7"
caso 8:
dígito_como_texto := "8"
caso 9:
dígito_como_texto := "9"
fin_según_sea
 
regresar dígito_como_texto
 
fin_subrutina
 
// Rutina principal que transforma el número completo
// usando recursividad
cadena subrutina número_a_texto (entero número)
 
cadena número_como_texto
cadena número_restante
cadena dígito_actual
 
si número < 10 entonces
 
número_como_texto := dígito_a_cadena (número)
 
sino
 
dígito_actual := dígito_a_cadena (número % 10)
número_restante := número_a_texto ( número / 10 )
número_como_texto := concatenar (número_restante, dígito_actual)
 
fin_si
 
regresar número_como_texto
 
fin_subrutina
</pre>
}}