Rutinas PERFORM TIMES - Capítulo 14

Curso de COBOL desde cero


En este capítulo aprenderás a hacer cálculos repetitivos con PERFORM TIMES.

Para el ejemplo podemos modificar la calculadora del capítulo 12.

IDENTIFICATION DIVISION.
PROGRAM-ID. CAPITULO-14.

DATA DIVISION.
FILE SECTION.
WORKING-STORAGE SECTION.
	01  NUMERO PIC 99.
	01  MULTIPLICADOR PIC 999.
	01  RESULTADO PIC 9999.
	01  SALIDA PIC XXXXX.

PROCEDURE DIVISION.

INICIO.
	DISPLAY "Para salir introduce 'salir' en la consola.".
	DISPLAY "Para multiplicar pulsa INTRO.".
	ACCEPT SALIDA.
	IF SALIDA = "salir"
		GO TO FINALIZAR
	ELSE
		PERFORM REINICIA-PROGRAMA.
		PERFORM INTRODUCE-NUMERO.
		PERFORM MOSTRAR-TABLA.

FINALIZAR.
	STOP RUN.

REINICIA-PROGRAMA.
	MOVE 0 TO MULTIPLICADOR.

INTRODUCE-NUMERO.
	DISPLAY "INTRODUCE UN NUMERO.".
	ACCEPT NUMERO.

MOSTRAR-TABLA.
	DISPLAY "LA TABLA DEL " NUMERO ":".
	PERFORM CALCULOS 10 TIMES.
	PERFORM INICIO.

CALCULOS.
	ADD 1 TO MULTIPLICADOR.
	COMPUTE RESULTADO = NUMERO * MULTIPLICADOR.
	DISPLAY NUMERO " * " MULTIPLICADOR " = " RESULTADO.

END PROGRAM CAPITULO-14.

El resultado es el mismo, solo que ahora, el código es más eficiente.

Veamos un ejemplo bastante más sencillo:

Código

IDENTIFICATION DIVISION.
PROGRAM-ID. CAPITULO-14.

DATA DIVISION.
FILE SECTION.
WORKING-STORAGE SECTION.
	01  NUMERO PIC 99.

PROCEDURE DIVISION.

INICIO.
	PERFORM OPERACION 10 TIMES.
	STOP RUN.

OPERACION.
	ADD 1 TO NUMERO.
	DISPLAY NUMERO.

END PROGRAM CAPITULO-14.

Resultado

Sencillo pero muy eficaz, ya que es capaz de ejecutar tantas veces como queramos una rutina.

01
02
03
04
05
06
07
08
09
10

Capítulos


Suscríbete a mi canal de YouTube para apoyarme

Si te ha gustado este curso y crees que el trabajo merece la pena, te agradeceré eternamente que te suscribas a mi canal de YouTube para apoyarme y que pueda seguir haciendo cursos gratuitos.

Además, si te encanta la programación, tienes un montón más de cursos gratuitos para ver.

No solo eso, podrás participar enviándome comentarios con tus sugerencias para temas específicos o cursos completos o incluso las dudas que tengas y las intentaré ir resolviendo en los cursos que estén todavía abiertos.


Comentarios

Si te quedan dudas sobre el temario, sobre COBOL, o cualquier otra cosa relacionada o simplemente quieres agradecer, aquí tienes tu sitio para dejar tu granito de arena. Gracias por tus comentarios y por darle vida a este sitio web.