Escolar Documentos
Profissional Documentos
Cultura Documentos
Matrícula: 20231SI008
1. Introdução ao COBOL:
2. Sintaxe básica:
3. Manipulação de dados:
• Modularização de programas
• Gerenciamento de memória
• Manipulação de exceções
• Uso de sub-rotinas
• Tratamento de erros
• Compiladores COBOL
• Ambiente de desenvolvimento integrado (IDEs)
• Debugging e testes
• Ferramentas de análise de código
A linguagem COBOL possui uma série de comandos que podem ser usados para
desenvolver programas para processamento de dados empresariais. Aqui estão alguns
dos principais comandos da linguagem COBOL:
1. MOVE: Este comando é usado para mover dados de uma variável para outra. É útil
para inicializar variáveis, realizar operações matemáticas e outras tarefas
relacionadas à manipulação de dados.
2. IF/ELSE: Estas são estruturas de controle de fluxo usadas para testar uma condição
e executar um determinado bloco de código, dependendo do resultado do teste.
3. PERFORM: Este comando é usado para executar uma rotina ou seção específica do
programa. É usado principalmente para evitar repetição de código e para tornar o
programa mais modular.
4. READ/WRITE: Estes comandos são usados para ler e gravar dados em arquivos de
dados. Eles são usados principalmente em programas de processamento de
arquivos.
9. SET: Este comando é usado para definir o valor de uma variável ou para alterar o
estado de uma condição.
10.GO TO: Este comando é usado para transferir o controle do programa para uma
seção específica do código. É usado principalmente para lidar com erros e para
retornar ao início de uma rotina.
COMANDO “MOVE”
O comando “MOVE” é um dos comandos mais comuns e úteis da linguagem COBOL. Ele é
usado para mover dados de uma variável para outra, e é usado para inicializar variáveis,
realizar operações matemáticas e outras tarefas relacionadas à manipulação de dados.
O comando MOVE também pode ser usado para mover valores de uma variável para
outra variável. Por exemplo:
Neste exemplo, o valor armazenado na variável "A" é movido para a variável "B".
O comando MOVE também pode ser usado para mover uma variável para uma área de
armazenamento em um arquivo de dados. Por exemplo:
1) Inicialização de Variáveis:
Neste exemplo, o valor "0" é movido para a variável "COUNTER" para inicializá-la com um
valor padrão.
2. Cálculo de Valores:
Neste exemplo, os valores "10" e "20" são movidos para as variáveis "A" e "B",
respectivamente. Em seguida, o comando "ADD" é usado para somar os valores de "A" e
"B", e o resultado é armazenado na variável "RESULT".
Esses são apenas alguns exemplos práticos de como o comando MOVE pode ser usado na
linguagem COBOL. O comando MOVE é um dos comandos mais fundamentais da
linguagem, e é amplamente utilizado em praticamente todas as tarefas relacionadas à
manipulação de dados.
Comando If/Else
O comando "IF/ELSE" é uma das estruturas de controle mais comuns na linguagem
COBOL, permitindo que o programa execute diferentes instruções dependendo de uma
condição lógica. O comando IF/ELSE é frequentemente usado para tomada de decisão em
programas COBOL, permitindo que os desenvolvedores de software criem fluxos de
programa mais complexos.
Por exemplo, o seguinte código usa o comando IF/ELSE para determinar se um número é
positivo ou negativo:
Neste exemplo, se o valor armazenado na variável "NUM" for maior do que zero, o
programa exibirá "Number is positive." Se o valor for menor ou igual a zero, o programa
exibirá "Number is negative."
O comando IF/ELSE também pode ser aninhado dentro de outros comandos IF/ELSE ou
em outras estruturas de controle, permitindo que os programadores criem fluxos de
programa complexos com várias condições lógicas e instruções.
Neste exemplo, o programa pede ao usuário que informe sua idade, que é armazenada na
variável CUSTOMER-AGE. Em seguida, o programa usa o comando IF/ELSE para verificar se
a idade do cliente é maior ou igual a 21 anos. Se for, o programa exibirá "You are old
enough to buy alcohol." Se não for, o programa exibirá "You are not old enough to buy
alcohol."
Esses são apenas alguns exemplos práticos de como o comando IF/ELSE pode ser usado
na linguagem COBOL. O comando IF/ELSE é uma das estruturas de controle mais
importantes na linguagem, permitindo que os programadores criem fluxos de programa
mais complexos que tomam decisões baseadas em condições lógicas.
Comando If/Else
O comando "PERFORM" é uma das principais estruturas de controle de fluxo na
linguagem COBOL. Ele é usado para executar uma seção de código várias vezes, seja um
bloco de instruções individuais ou uma seção inteira de um programa.
Neste exemplo, o programa exibe a mensagem "Hello, world!" cinco vezes, usando a
cláusula "TIMES" para especificar o número de vezes que o bloco de instruções deve ser
executado.
O comando PERFORM também pode ser usado para executar um bloco de instruções até
que uma determinada condição seja atendida. Por exemplo, o seguinte código usa o
comando PERFORM para ler entradas do usuário até que o usuário entre "QUIT":
Neste exemplo, o comando PERFORM é usado com a cláusula "UNTIL" para especificar
que o bloco de instruções deve ser executado repetidamente até que a variável USER-
INPUT seja igual a "QUIT".
O comando PERFORM também pode ser usado com outras cláusulas, como WITH TEST
BEFORE ou WITH TEST AFTER, para especificar se a condição de saída deve ser verificada
antes ou depois da execução do bloco de instruções.
Suponha que você tenha um array de números e precise somar todos os valores presentes
no array. Você pode usar o comando PERFORM para percorrer o array e somar os valores.
O exemplo abaixo demonstra como usar o PERFORM para esse fim:
Neste exemplo, o comando PERFORM é usado com a cláusula "VARYING" para percorrer o
array NUMBERS, somando cada valor em TOTAL. O loop é executado até que o índice I
seja maior do que 5.
2. Processando uma lista de registros
Suponha que você tenha uma lista de registros de clientes e precise imprimir o nome e o
endereço de cada um. Você pode usar o comando PERFORM para processar cada registro
na lista e imprimir as informações relevantes. O exemplo abaixo demonstra como usar o
PERFORM para esse fim:
Neste exemplo, o comando PERFORM é usado com a cláusula "UNTIL" para ler cada
registro no arquivo de clientes até que o EOF-FLAG seja definido como 'Y'. Cada vez que
um registro é lido com sucesso, o nome e o endereço do cliente são exibidos na tela.
Suponha que você esteja escrevendo um programa que solicita ao usuário que digite um
número e valide se o número digitado está dentro de um intervalo específico. Você pode
usar o comando PERFORM com a cláusula "WITH TEST AFTER" para validar a entrada do
usuário. O exemplo abaixo demonstra como usar o PERFORM para esse fim:
Neste exemplo, o comando PERFORM é usado com a cláusula "WITH TEST AFTER" para
solicitar ao usuário que digite um número repetidamente até que um número válido seja
inserido. O loop é executado até que a variável VALID-FLAG seja definida como 'Y'. Se o
número digitado pelo usuário estiver entre 1 e 10, a variável VALID-FLAG é definida como
'Y', permitindo que o loop termine e o programa continue a ser executado.
Comando Read/Write
O comando READ e o comando WRITE são usados em COBOL para entrada e saída
de dados a partir de um arquivo, respectivamente.
O comando READ é usado para ler um registro do arquivo. Para usar o comando READ,
você precisa abrir o arquivo primeiro com o comando OPEN e então associar o registro
lido a uma estrutura de dados definida no programa COBOL. O comando READ pode ser
usado com uma cláusula "AT END" para identificar quando o final do arquivo é alcançado.
Abaixo, segue um exemplo de como usar o comando READ para ler um registro de um
arquivo de clientes:
Neste exemplo, um arquivo de clientes é definido com a instrução SELECT. O registro é
definido na estrutura CUSTOMER-RECORD. O arquivo é aberto com o comando OPEN. O
comando READ é usado para ler o primeiro registro do arquivo. A cláusula "AT END" é
usada para verificar se o final do arquivo foi atingido. O arquivo é fechado com o
comando CLOSE.
Abaixo, segue um exemplo de como usar o comando WRITE para gravar um registro em
um arquivo de clientes:
Comando Compute
O comando COMPUTE é usado na linguagem COBOL para realizar cálculos aritméticos em
variáveis e campos. Ele pode executar operações matemáticas básicas, como adição,
subtração, multiplicação e divisão, bem como funções matemáticas mais avançadas, como
exponenciação, logaritmo e raiz quadrada.
Onde:
Aqui está um exemplo simples de como o comando COMPUTE pode ser usado:
Neste exemplo, o comando COMPUTE é usado para adicionar os valores das variáveis
NUM1 e NUM2 e armazenar o resultado na variável RESULT. O valor 15 é então exibido na
tela usando o comando DISPLAY.
É importante observar que, em alguns casos, o comando COMPUTE pode ser menos
eficiente do que usar operações MOVE e aritméticas separadas. Isso ocorre porque o
comando COMPUTE realiza todas as operações em uma única instrução, o que pode levar
a cálculos desnecessários em alguns casos. Por isso, é importante avaliar cuidadosamente
o uso do comando COMPUTE em cada caso específico e garantir que ele seja usado de
maneira adequada e eficiente.
Exemplos Práticos do Comando Compute
1. Cálculo de uma média
Neste exemplo, o comando COMPUTE é usado para calcular a média de três números
(NUM1, NUM2 e NUM3) e armazenar o resultado em AVG. O resultado é então exibido na
tela usando o comando DISPLAY.
Comando Display
O comando DISPLAY é usado na linguagem COBOL para exibir informações na tela ou em
um arquivo de saída. Ele é usado principalmente para exibir mensagens de erro,
resultados de cálculos ou informações de depuração para o usuário.
O comando DISPLAY é seguido por um ou mais operandos separados por vírgulas, que
podem ser constantes, variáveis, expressões ou literais. Esses operandos são exibidos na
tela ou em um arquivo de saída, separados por espaços. O comando DISPLAY não
adiciona uma nova linha após a exibição dos operandos, então, se você quiser iniciar uma
nova linha, é necessário usar o caracter especial de nova linha (CR ou LF).
Este exemplo declara uma variável chamada MSG que contém a mensagem "Hello, world!"
e, em seguida, usa o comando DISPLAY para exibir essa mensagem na tela. O programa é
finalizado usando a instrução STOP RUN.
Este programa declara uma variável SCORE que contém um valor numérico representando
uma pontuação em um teste. O comando IF é usado para verificar se a pontuação é
menor que 70 e, se for o caso, exibe uma mensagem de falha usando o comando
DISPLAY. Caso contrário, exibe uma mensagem de sucesso.
Comando String
O comando STRING é usado na linguagem COBOL para concatenar duas ou mais variáveis
de caracteres em uma única variável. É semelhante ao comando CONCATENATE, usado em
outras linguagens de programação. O resultado é armazenado em uma variável de
destino, que pode ser uma variável já existente ou uma nova variável que é criada apenas
para armazenar o resultado da concatenação.
Onde:
• source-1, source-2, ..., source-N são as variáveis que contêm as strings que serão
concatenadas.
• DELIMITER-1, DELIMITER-2, ..., DELIMITER-N são os delimitadores que serão
inseridos entre cada par de strings.
• destination é a variável que irá conter a string resultante da concatenação.
Os delimitadores são opcionais e podem ser especificados usando o valor SPACE para
inserir um espaço em branco entre as strings ou um literal delimitador entre as aspas
duplas, como no exemplo abaixo:
Neste exemplo, a string resultante será composta pelas variáveis NAME, ADDRESS, CITY,
STATE e ZIP, separadas por vírgulas e espaços, e será armazenada na variável MAILING-
ADDRESS.
O comando STRING pode ser usado em várias situações, como criar cabeçalhos de
relatórios, construir mensagens de saída personalizadas ou formatar strings para
impressão. Ele é uma ferramenta poderosa para trabalhar com dados de caracteres em
COBOL.
Neste exemplo, o comando MOVE é usado para definir o código de erro (404), o tipo de
erro (NOT FOUND) e o texto da mensagem de erro. O comando STRING é usado para
concatenar essas informações em uma única mensagem de erro, que é armazenada na
variável ERROR-MESSAGE. O resultado é exibido na tela usando o comando DISPLAY.
Comando Evaluate
O comando EVALUATE é usado em COBOL para testar um valor em relação a uma série de
condições e executar uma ação correspondente. É semelhante a uma estrutura switch-
case em outras linguagens de programação.
Cada condição é testada em ordem. A primeira condição que é verdadeira resulta na ação
correspondente sendo executada e as condições subsequentes são ignoradas. Se
nenhuma condição for verdadeira, a ação padrão, especificada pela palavra-chave
OTHERWISE, será executada.
Comando Set
O comando SET é usado em COBOL para definir valores em variáveis de controle, tais
como indicadores de execução, flags e chaves. O comando pode ser usado para definir
valores únicos ou múltiplos valores de uma vez.
Onde:
A primeira forma do comando SET é usada para atribuir o valor de uma variável a outra
variável. Por exemplo:
A segunda forma do comando SET é usada para definir valores literais em uma ou mais
variáveis. Por exemplo:
Nesse exemplo, o indicador MY-PARAGRAPH é definido como TRUE e usado para indicar
o início do parágrafo que contém a instrução DISPLAY.
Em resumo, o comando SET é um comando muito útil em COBOL para definir valores de
variáveis, indicadores de execução e flags. Ele permite definir valores únicos ou múltiplos
valores de uma vez e é amplamente utilizado em programas COBOL.
Neste exemplo, o comando SET é usado para definir valores iniciais para três variáveis. A
primeira variável é uma PIC X(10), que recebe o valor literal 'Hello'. A segunda variável é
uma PIC 9(3), que recebe o valor literal 100. A terceira variável é uma PIC 9(3)V99, que
recebe o valor literal 123.45. Em seguida, a instrução DISPLAY é usada para exibir os
valores das três variáveis.
Neste exemplo, o comando SET é usado para definir valores para o indicador de execução
MY-PARAGRAPH. Na primeira ocorrência de MY-PARAGRAPH, a instrução DISPLAY é
executada, e então o valor do indicador é definido como FALSE. Na segunda ocorrência de
MY-PARAGRAPH, a instrução DISPLAY é executada novamente, e o valor do indicador é
definido como TRUE.
3. Definindo valores para flags:
Neste exemplo, o comando SET é usado para definir valores para duas flags, WS-FLAG-1 e
WS-FLAG-2. Dependendo da condição IF, uma das flags receberá o valor 'Y', enquanto a
outra receberá o valor 'N'. Essas flags podem ser usadas posteriormente no programa
para tomar decisões ou realizar outras operações.
Comando Go To
O comando "Go To" é uma das instruções mais antigas e básicas da linguagem
COBOL e permite que um programa salte para uma seção específica do código. É
considerado uma instrução de controle de fluxo, que pode levar a uma estrutura de
programa menos legível e mais difícil de manter.
O uso excessivo do comando "Go To" pode tornar o código difícil de entender e manter,
portanto, é recomendável usá-lo com cautela e sempre que possível utilizar outras
instruções de controle de fluxo mais modernas, como "If/Else" e "Evaluate".
A estrutura geral do comando "Go To" é a seguinte:
Onde "condição" é uma expressão que deve ser avaliada como verdadeira ou falsa, e
"etiqueta" é uma marcação que identifica a seção do código para a qual o programa deve
ser desviado.
O comando "Go To" pode ser usado para desviar o fluxo de controle do programa para
um ponto específico do código. Por exemplo, em uma situação em que uma condição seja
atendida, o fluxo do programa pode ser desviado para um determinado ponto que não
seria alcançado de outra forma.
No entanto, é importante ressaltar que o uso indiscriminado do comando "Go To" pode
resultar em loops infinitos, saltos inesperados e dificuldade na manutenção do código.
Portanto, deve-se ter cuidado ao usá-lo e, sempre que possível, considerar o uso de
outras instruções de controle de fluxo.
:
1. Uso em rotinas de tratamento de exceção:
Neste exemplo, o comando "Go To" é usado para desviar o fluxo do programa para
uma rotina de tratamento de exceção, caso a divisão por zero seja detectada.
2. Uso em loops:
Neste exemplo, o comando "Go To" é usado para verificar uma condição dentro de um
loop e, caso a condição seja atendida, desviar o fluxo do programa para a finalização do
programa.
3. Uso em rotinas de tratamento de erro:
Neste exemplo, o comando "Go To" é usado para desviar o fluxo do programa para uma
rotina de tratamento de erro, caso ocorra algum problema na abertura de arquivos de
entrada e saída.
Embora COBOL tenha sido criado há mais de 60 anos, ainda é uma linguagem valiosa para
muitas organizações e continua sendo amplamente usada em sistemas legados. Além
disso, muitas empresas ainda procuram desenvolvedores com conhecimentos em COBOL
para manutenção e modernização de sistemas existentes. Portanto, aprender COBOL pode
ser uma habilidade valiosa para programadores que desejam se especializar em
desenvolvimento de software empresarial e sistemas financeiros.