miércoles, 24 de julio de 2013

Cobol: conversiones entre tipos de datos (2)

Supongamos que tenemos un fichero de entrada en el que uno de los campos, por ejemplo REG-E-IMPORTE, es un PIC X(15) y representa un importe de 13 posiciones enteras y 2 posiciones decimales. ¿Qué tendríamos que hacer para convertir dicho campo a un PIC S9(13)V9(2) USAGE COMP-3?

Es muy sencillo y muy fácil. En un programa que he realizado recientemente (y que está probado) he declarado en working las siguientes variables:

          01 WS-IMP1                                 PIC X(15).             
          01 WS-IMP1-N REDEFINES WS-IMP1      PIC 9(15).             
          01 WS-IMP1-AUX                        PIC 9(15) VALUE ZEROES.
          01 WS-IMP-AMORT-PRINC       PIC S9(13)V9(02).      

En el programa, en donde corresponda, tendríamos que codificar lo siguiente:

          MOVE REG-E-IMPORTE               TO WS-IMP1                 

          MOVE WS-IMP1-N                        TO WS-IMP1-AUX             

          MOVE WS-IMP1-AUX(1:13)        TO WS-IMP-AMORT-PRINC(1:13)

          MOVE WS-IMP1-AUX(14:2)        TO WS-IMP-AMORT-PRINC(14:2)



Pues esto es todo lo que hay que hacer. A lo mejor te preguntarás: pero, ¿qué sucede si el campo REG-E-IMPORTE es un PIC X(13) y tenemos que convertirlo a un PIC S9(13)V9(2) USAGE COMP-3? Pues muy sencillo. Tanto la longitud de WS-IMP1 como la de WS-IMP1-N sería 13 mientras la definición de WS-IMP1-AUX y WS-IMPO-AMORT-PRINC sería exactamente a la indicada anteriormente. En cuanto al código, sería exactamente el mismo que el indicado anteriormente.

lunes, 15 de julio de 2013

Citas Informáticas 2

Aquí vienen algunas citas de Dijkstra.

Sobre FORTRAN...

FORTRAN, un desorden infantil, con casi 20 años de antigüedad, es inadecuado más allá de toda esperanza para cualquier cosa que tengas en mente: demasiado torpe, demasiado arriesgado, y demasiado costoso de usar.

Sobre Basic...

Es prácticamente imposible enseñar a programar correctamente a estudiantes que han estado expuestos a Basic con anterioridad; como programadores potenciales han sido mentalmente mutilados más allá de cualquier esperanza de regeneración.

Sobre PL/I...

PL/I es una enfermedad terminal. Pertenece más al conjunto de los problemas que al de las soluciones.

Sobre Cobol...

El uso de COBOL produce parálisis cerebral; por tanto su enseñanza debería considerarse constitutivo de delito.

Y sobre APL...

APL es un error, llevado a la perfección. Es el lenguaje del futuro para las técnicas de programación del pasado: creará una nueva generación de incompetentes.

No dejaba títere con cabeza.

lunes, 1 de julio de 2013

Libros informática: Editorial RA-MA

Si te interesa comprar un libro de informática en particular de la editorial RA-MA puedes acceder a su página web (http://www.ra-ma.es/) y pinchar donde pone Informática:


Ahí encontrarás todos los libros de informática de la editorial RA-MA.