Estude as Amostras de solução disponíveis e desenvolva o rascunho das soluções em papel.
Capítulo 03 - Aula 06 - Amostra 01
Passos para resolução
Desenvolver o programa utilizando o IDE instalado em seu computador.
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.
Altere conforme enunciado e compile o programa fonte PR16TA01. Conserte os erros se houver.
Linkedite o programa objeto PR16TA01.
Execute o programa PR16TA01 criando o arquivo S1-PR16TA01.txt.
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
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.
No IDE o programa PR16TA01 foi compilado gerando o programa objeto PR16TA01.
No IDE o programa PR16TA01 foi linkeditado gerando o programa executável PR16TA01.
No IDE o programa PR16TA01 foi executado gerando o arquivo S1-PR16TA01.txt.
O programa fonte, o executável PR16TA01 e o arquivo S1-PR16TA01.txt foram carregados na pasta Resolução.