Capítulo 03 - Aula 06 - Amostra 01

Passos para resolução

01

Estude as Amostras de solução disponíveis e desenvolva o rascunho das soluções em papel.

02

Desenvolver o programa utilizando o IDE instalado em seu computador.

03

No IDE, crie o novo projeto e programa fonte com o nome PR16TA01 a partir de fonte já existente.  Crie a pasta ARQUIVOSMF para guardar seus arquivos.

04

Altere conforme enunciado e compile o programa fonte PR16TA01. Conserte os erros se houver.

05

Linkedite o programa objeto PR16TA01.

06

Execute o programa PR16TA01 criando o arquivo S1-PR16TA01.txt. 

07

Carregue os programas fonte e executável PR16TA01 e o arquivo S1-PR16TA01.txt na pasta Resolução.

Enunciado

Desenvolver um programa para criar um arquivo sequencial com registros, utilizando a estrutura abaixo e recebendo os dados da console.

CODIGO - PIC 9(4) PRECO-UNITARIO - PIC 999V99 QTD-VENDA - PIC 9(5) VENDEDOR - PIC X(20)
3214 5,00 50 João
4356 15,00 150 João
7698 20,00 200 João
2875 15,00 150 Maria
8176 25,00 70 Maria
2309 30,00 300 Maria

- incluir no mínimo 10 registros
- o código deverá ser único
- inventar seus próprios registros

Resolução da Tarefa

01

No IDE foi criado o programa fonte  PR16TA01 contendo o seguinte código;

000100 IDENTIFICATION DIVISION.
000200  PROGRAM-ID. PR16TA01.
000210*-----------------------------------------------------*
000220* AMOSTRA PRATICA 16 TAREFA 01                        *
000230*-----------------------------------------------------*
000400 ENVIRONMENT DIVISION.
000500  INPUT-OUTPUT SECTION.
000600   FILE-CONTROL.
000700     SELECT ARQUIVO-SAIDA
000800         ASSIGN       TO  "C:/ARQUIVOSMF/S1-PR16TA01.TXT".
001000*
001700 DATA DIVISION.
001800  FILE SECTION.
001900  FD  ARQUIVO-SAIDA.
002000  01  REGISTRO-SAIDA.
002100      03  REGISTRO-DETALHE PIC X(34).
002101*
002110 WORKING-STORAGE SECTION.
002111 01 REGISTRO-ENTRADA.
002200      03  COD-ITEM      PIC 9(4)    VALUE ZEROS.
002300      03  PRC-UNIT      PIC 9(3)V99 VALUE ZEROS.
002400      03  QTD-VEND      PIC 9(5)    VALUE ZEROS.
002500      03  VENDEDOR      PIC X(20)   VALUE SPACES.
002700*
003400 PROCEDURE DIVISION.
003401*
003410 INICIO.
003600      OPEN OUTPUT  ARQUIVO-SAIDA.
003601      PERFORM CARREGAR THRU  FINALIZA
003602                       UNTIL COD-ITEM = 9999.
003603      CLOSE ARQUIVO-SAIDA.
003604      STOP RUN.
003605*
003610 CARREGAR.
004300      DISPLAY "COD-ITEM = " UPON CONSOLE.
004310      ACCEPT   COD-ITEM     FROM CONSOLE.
004320      IF COD-ITEM = 9999   GO TO FINALIZA.
004323      DISPLAY "PRC-UNIT = " UPON CONSOLE.
004324      ACCEPT   PRC-UNIT     FROM CONSOLE.
004326      DISPLAY "QTD-VEND = " UPON CONSOLE.
004327      ACCEPT   QTD-VEND     FROM CONSOLE.
004328      DISPLAY "VENDEDOR = " UPON CONSOLE.
004329      ACCEPT   VENDEDOR     FROM CONSOLE.
004330*
004331 GRAVA.
004332      WRITE  REGISTRO-SAIDA FROM REGISTRO-ENTRADA.
004333*
004341 FINALIZA.
004351      EXIT.

02

No IDE o programa PR16TA01 foi compilado gerando o programa objeto PR16TA01.

03

No IDE o programa PR16TA01 foi linkeditado gerando o programa executável PR16TA01.

04

No IDE o programa PR16TA01 foi executado gerando o arquivo S1-PR16TA01.txt.

05

O programa fonte, o executável PR16TA01 e o arquivo S1-PR16TA01.txt foram carregados na pasta Resolução.