Nombre Password [ Regístrate ]

Diccionario numérico (OIE 5 - 2001)

 

Cada vez existen más programas que ayudan a la traducción de textos entre idiomas diferentes. En este problema nos interesa implementar la traducción de números del inglés.

Objetivo

Se trata de traducir uno o más enteros de inglés a su representación numérica. Los números a traducir tendrán valores entre -999.999.999 y 999.999.999.

Ésta es la lista de todas las palabras en inglés que el programa debe tratar:

negative, zero, one, two, three, four, five, six, seven, eight, nine, ten, eleven, twelve, thirteen, fourteen, fifteen, sixteen, seventeen, eighteen, nineteen, twenty, thirty, forty, fifty, sixty, seventy, eighty, ninety, hundred, thousand, million

Entrada

La entrada del programa consiste de una secuencia de líneas, que residen en un archivo de texto (ASCII) con nombre ING.DAT, que contendrá una serie de líneas. Cada línea contiene un número a traducir, formado íntegramente por las palabras listadas en el apartado anterior y separadas por caracteres "espacio". Se supone que la secuencia de palabras representa un número correcto. En particular, las palabras "hundred", "thousand" y "million" siempre estarán precedidas por una palabra que represente un número entre uno y nueve.

Salida

La salida del programa ha de grabarse en un archivo de texto (ASCII) con nombre ING.RES, que contendrá una línea por cada número de la entrada. La línea k-ésima de la salida será la representación numérica del número escrito en inglés en la línea k-ésima de la entrada. No deben escribirse ni puntos decimales ni similares; tan solo las cifras y, si es negativo, el signo '-'.

Ejemplo de entrada

six
negative seven hundred twenty nine
one million one hundred one
five hundred twenty two

Ejemplo de salida

6
-729
1000101
522



© (2001-2008) ALGORITMIA.NET - Política de privacidad