| 
  Universidad de Costa Rica Escuela de Ciencias de la
 Computación e Informática
 |  | 
  CI-1322 Autómatas y compiladores
La calculadora de varios dígitos con Lex
     
Repita la
tarea anterior. Use
Lex/Flex. Recuerde que 
en muchas ocasiones no hay espacios en blanco que separan los 
términos de una expresión:
 X:\DIR\SubDir> CLC (((25_000*300,00)))
     
Permita que su programa acepte puntos (".") y comas 
(",") tanto como subrayados ("_") como 
separadores de miles. Para indicar adónde está el 
punto decimal permita solo puntos (".") o comas 
(","). Si alguno de los números tiene solo un 
punto o coma, tómelo como separador de decimales. Si hay 
más de uno, use el último como separador de 
decimales. Además, use siempre el mismo formato para la 
salida, usando la coma como separador de miles y el punto como 
separador de decimales.
-  C:\DIR\SubDir> CLC 9.000,000.00 + 123,.,456,7
 ==> 9,123,456.7
-  C:\DIR\SubDir> CLC 9000000.00 + 123456.7
 ==> 9,123,456.7
-   C:\DIR\SubDir> CLC.exe ( 1.234,567.00 + 3 )
 ==> 1,234,570
-  C:\DIR\SubDir> CLC.exe ( 1.234.567,00 + 3 )
 ==> 1,234,570
-  C:\DIR\SubDir> CLC.exe ( 1_234_567.00 + 3 )
 ==> 1,234,570
-   C:\DIR\SubDir> CLC.exe ( 1.234 + 3 )
 ==> 4.234
-   C:\DIR\SubDir> CLC.exe ( 1,234 + 3 )
 ==> 4.237
-  C:\DIR\SubDir> CLC.exe ( 1,234.567,00 + 3 )
 ==> 1,234,570
-  C:\DIR\SubDir> CLC.exe ( 1.234,567.00 + 3 )
 ==> 1,234,570
     
Entregue su tarea por
correo electrónico, como 
lo hizo anteriormente.
  ![[mailto:]](../../../img/mailbox.gif) Entrega de Tareas
  Entrega de Tareas
| 
  | Tiempo de entrega: | 1 semana |  
  | Modalidad: | En parejas |  | 
 Soluciones 
  
  ![[mailto:]](../../../img/mailbox.gif) Adolfo Di Mare <adolfo@di-mare.com>.
  Adolfo Di Mare <adolfo@di-mare.com>.
Copyright © 2010
Derechos de autor reservados © 2010