Pascal/Turbo Pascal - Problemilla! pascal

 
Vista:

Problemilla! pascal

Publicado por Prue (1 intervención) el 18/10/2003 15:47:54
Holass!

Vaya, tengo un problemilla con programita en pascal: dice

Escribir un programa que lea un numero de tres dígitos escrito en palabra, y su salida sea dicho numero, ejemplo...

entrada: Trecientos ochentaisiete
salida: 387

He estado pensado y la verdad Ostia! me comió el problemita, pensaba validar para que solo pudieran entrar números de 3 dígitos,... se como hacerlo pero inicializando todos los números, pero así no seria eficiente, además que seria súper larguísimo...

Creo que debe haber un truquillo entre el comienzo de el numero y el final de el numero, pero hasta ahora no tengo mucha idea...

Rayos no se como hacerle..

Si alguien tiene idea de como podría hacerlo, le agradecería me comentar su idea, por favor

Saludos

Aun estoy pensando..

Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Problemilla! pascal

Publicado por Diego Romero (786 intervenciones) el 18/10/2003 21:31:27
Por empezar 387 se escribe en palabras como "trecientos ochenta y siete" y no como lo escribiste tú.
Para verificar que en palabras no se pase de novecientos noventa y nueve, que de otra forma dará un número de 4 cifras solo debes buscar en la oración que no esté incluida la palabra "mil", ni siquiera como silaba. Espero eso te ayude.
En realidad el problema es más fácil de lo que parece, quizas te confunden algunos casos especiales, por ejemplo, el 10, "diez" y los 5 números que le siguen, para el resto creo que la regla es así:
partes de un número conocio, el cero que lo formarías como "000", tomas la primera palabra de la oración que puede ser "cien", "doscientos", "trescientos" etc.., ahí tienes tu primera cifra "X00", si no está ninguna de las centenas, asume que es un número de dos cifras y la primera palabra puede ser "veinte", "treinta", "cuarenta" etc, el número será de la forma "0X0", si ninguna de estas palabras está entonces busca por las unidades "uno", "dos", "tres", etc..., el número tiene la forma de "00X", lo último sería sumar los tres resultados y ya tienes el número completo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar