Ingrese un número y convierta a letras – Diagrama de Flujo
Problema
Ingrese un número y convierta a letras.
Solución
Esta solución solo acepta números que van desde el número cero al noventa y nueve, donde el usuario ingresa un numero decimal y la aplicación retornara como respuesta dicho número en letras.
Ejemplo
- Entrada: 35
- Salida: treinta y cinco.
Unidades={“cero”, ”uno”, ”dos” ,”tres” ,”cuatro” ,”cinco” ,”seis” ,”siete” ,”ocho” ,”nueve” ,”diez”} donde el elemento Unidades(3)=”tres”, Unidades(9)=”nueve”, etc.
Finalmente inicializaremos el arreglo “Decenas” que contendrá los números veinte, treinta,..., noventa en letras.
Luego de ello realizamos una comparación para determinar si “num” es mayor a 10
Si es Falso tomaremos el camino izquierdo donde nos mostrara el resultado buscado
Ejemplo
- Entrada: 6
- Resultado: seis
Si es Verdadero nos iremos por el lado derecho y llamaremos a una subrutina llamada NumeroMayora10 el cual recibirá 4 parámetros num, Decenas, Unidades, num11a19 las cuales serán utilizadas en la subrutina.
Luego se hace otra consulta si “num” es mayor a 19
Si el resultado de la comparación es falsa, lo que haremos será extraer el numero en letras del arreglo num11a19, que recibe como parámetro “num-11”(num menos once), debido a que en este arreglo los índices van de 0 a 8(el dato en la posición 0 es el once , en la posición 1 es el doce, etc.).
Ejemplo
- Entrada: num=15
- Resultado: quince
Si el resultado de la comparación es verdadera, entonces llamaremos a la subrutina ObtenerUnidades,las unidades se obtienen sacando modulo 10 a “num”.
Ejemplo
MOD(36,10) = 6 el modulo nos retorna el residuo de una división
Esta subrutina nos retorna la unidad de un numero por ejemplo 36 nos retorna 6
Una vez obtenido la unidades pasamos a la subrutina ObtenerDecenas, para obtener las decenas las decenas la operación a realizar es: al número dado le restamos las unidades y lo dividimos entre diez, d=(num-u)/10, así obtenemos las decenas
Ahora haremos una pregunta si las unidades son iguales a cero
De ser Verdadero, mostraremos el resultado con los datos del arreglo Decenas, para acceder a un elemento a las decenas obtenidas le restamos 2 (Decenas(0)=veinte,Decenas(1)=treinta, …,Decenas(7)=noventa)
Ejemplo
- Entrada: num = 50 donde d=5
- Resultado = cincuenta
De ser falso, mostraremos el arreglo de Decenas y Unidades a la vez
Ejemplo
- Entrada: num=39
Decenas(d-2)=”treinta” y Unidades(u)=”nueve”
- Resultado: treinta y nueve
Código Fuente:
Diagrama Fuente DFD | ||
Código fuente en Java. | ||
Código fuente en C++ | ||
Código fuente en C | ||
Código fuente en C# | ||
Código fuente en Python | ||
Código fuente en Visual Basic |
5 comentarios:
podrian decirme como lo ago asta 999,999
como hacerlo sin usar subrutina??? :S
Como puedo hacelo sin los subprogramas???¡?¡?¡
Los subprogramas me follan la mente porque le quiero poner mi esencia
Publicar un comentario