Vous êtes sur la page 1sur 13

FACULDADE COTEMIG

5º PERÍODO - CURSO DE BACHARELADO EM SISTEMAS DE


INFORMAÇÃO
LINGUAGENS DE PROGRAMAÇÃO – PROF. RENAN CUNHA

LINGUAGENS DE PROGRAMAÇÃO

A LINGUAGEM COBOL

Nomes:

Albert Tanure
Braulio José

BELO HORIZONTE
2007
2

SUMÁRIO

SUMÁRIO.......................................................................................................................................................2

1. INTRODUÇÃO...........................................................................................................................................3

1.1HISTÓRICO.................................................................................................................................................3
1.2DOMÍNIO DE APLICAÇÃO DA LINGUAGEM.........................................................................................................3
1.3PROJETO DA LINGUAGEM..............................................................................................................................4

2.ASPECTOS TEÓRICOS............................................................................................................................5

2.1PARADIGMAS DA LINGUAGEM........................................................................................................................5
2.2IMPLEMENTAÇÃO DA LINGUAGEM...................................................................................................................5
2.3ESTRUTURA DE DADOS..................................................................................................................................6
2.3.1Alfanuméricos.................................................................................................................................6
2.3.2Numéricos.......................................................................................................................................6
2.3.3Literal Numérico.............................................................................................................................6
2.3.4Literal Alfanumérico.......................................................................................................................7
2.4CONSIDERAÇÕES SOBRE A SINTAXE.................................................................................................................7
2.4.1IDENTIFICATION DIVISION........................................................................................................7
2.4.2ENVIRONMENT DIVISION...........................................................................................................8
2.4.3DATA DIVISION.............................................................................................................................8
2.4.4PROCEDURE DIVISION...............................................................................................................8
2.4.5Convenções do COBOL..................................................................................................................8
2.5AVALIAÇÃO DA LINGUAGEM........................................................................................................................10

3. CONLUSÃO..............................................................................................................................................12

4. REFERÊNCIAS BIBLIOGRÁFICAS....................................................................................................13
3

1. Introdução

1.1 Histórico
Em 1958 o governo norte-americano enfrentava grandes problemas com
os sistemas, que cada vez tornavam-se mais complexos e de difícil controle,
e também com os custos de manutenção, totalmente elevados para a época,
que chegavam a elevados custos por ano. O governo então propôs ao
Pentágono a criação de uma linguagem independente de fabricante e com
uma legibilidade maior que o FORTRAN. Surgiu-se então o COBOL.
Criado em 1959 com ajuda de grupos de usuários, fabricantes e também
órgãos do governo norte-americano, o COBOL (Commom Business Oriented
Language) é uma linguagem de computador orientada para negócios. As
especificações foram criadas tirando muita base na linguagem FLOW-MATIC
e também da linguagem COMTRAN. COBOL também serviu de inspiração
para a linguagem ADA.

1.2 Domínio de aplicação da Linguagem


O propósito do COBOL era atender sistemas comerciais e
administrativos.
Não sendo necessária a manipulação de fórmulas matemáticas mais
complexas e sim manipulação de arquivos de textos de constante
atualização, o COBOL demonstra recursos para manipulação de dados de
entrada e saída, sendo considerada uma linguagem de terceira geração.
Diferente de outras linguagens criadas para determinados tipos de
problemas, o COBOL atendia a recursos financeiros, onde disseminou em
áreas governamentais como na agricultura, educação, indústrias, serviços e
comércio. Essa disseminação deu-se pelo surgimento de micros, planilhas e
banco de dados, e recursos como geração de relatórios elaborados,
4

maneiras precisas de descrever e elaborar números decimais e caracteres,


e, habilidade para especificação de operações aritméticas decimais.

1.3 Projeto da Linguagem

Todas as instruções escritas na linguagem COBOL são em inglês ao


invés de códigos complexos. Os programas nela escrito, apesar de mais
extensos, são mais claros, de fácil assimilação. Como são inscritas em inglês
tornam o código auto-documentado.
A linguagem contém muitas palavras reservadas. Outra característica que
deve ser frisada é a identação do código, pois se você não respeitar, com
certeza não irá funcionar gerando um grande número de erros. No exemplo
que fizemos no final deste trabalho tivemos dificuldades iniciais ligadas à
identação. Vale lembrar que isso varia do compilador, os novos compiladores
tratam isso, como também a sensibilidade da escrita, pois palavras
reservadas devem ser escritas em maiúscula, porém alguns compiladores
traduzem essas palavras reservadas no momento da compilação, não
obrigando ela estar em maiúscula no código fonte.
5

2. Aspectos Teóricos

2.1 Paradigmas da Linguagem


O COBOL utiliza o paradigma imperativo. Absorvendo a idéia baseada
em estados, e comandos que modificam este estado, os programas são
escritos para modelar processos e objetos do mundo real.
Esses objetos frequentemente possuem estados que variam com o
tempo, e são representados por variáveis. Algumas vantagens que podemos
destacar é a organização do programa que este paradigma proporciona
embora algumas desvantagens sejam códigos mais complexos e reutilização
de código pouco eficiente.
Outras linguagens que se encaixam nesse paradigma:
• Ada;
• Pascal;
• C;
• Fortran.

2.2 Implementação da Linguagem


COBOL é compilada, os programas são traduzidos em linguagem de
máquina e são executados diretamente no computador. Uma grande
vantagem da compilação é a execução rápida do programa.
Outra vantagem que podemos citar neste ponto é a portabilidade, pois
você pode ter compiladores para diversos sistemas.
6

2.3 Estrutura de dados


Existem três tipos básicos que são utilizados no COBOL:
• Alfanumérico;
• Numérico (decimais ou inteiros);
• Literais.

2.3.1 Alfanuméricos
Contém informações alfanumérico.
Exemplo de declaração:
Nome Pic X(30).
Se quiser inicializar Nome com “Ronaldo”, deve se fazer: Nome Pic
X(30) Value “Ronaldo”. Automaticamente é preenchido com espaço vazio
quando não é inicializada a variável. Se for necessário repetir os valores
dentro de um campo na inicialização, você pode fazer Pic X(30) All “k”,
tudo será preenchido com K.

2.3.2 Numéricos
Contém números.
É definido usando a clausula Pic 9.
Se você declara Pic 9, você poderá usar de 1 a 99 para a variável
declarada, você pode declarar até no máximo 18 dígitos, ou seja Pic
9(18). É possível também especificar a quantidade de casas decimais,
por exemplo, Pic 9(2)V99, isto significa que você terá duas casas
decimais, representadas seguidas do V.

2.3.3 Literal Numérico


Máximo de 18 dígitos.
Exemplos:
• 33
• 25
• -98.12
7

2.3.4 Literal Alfanumérico


Máximo de 120 caracteres incluindo os espaços.
Exemplo:
• “Trabalho de Linguagens”.

2.4 Considerações sobre a sintaxe


Como o intuito do Cobol era ser intuitivo, ele teve como base de
utilização o inglês, onde você pode encontrar verbos, sentenças da língua
inglesa contidas na linguagem. O bom que isso tornou a linguagem simples e
logicamente já “auto-documentada”.

2.4.1 IDENTIFICATION DIVISION


Esta seção identifica o programa para o compilador. O Program-Id que
conterá o nome do programa é muito importante, pois ele que será
referenciado no sistema operacional quando você o executa, e também
quando um programa Cobol fizer uma chamada a outro programa Cobol, é
através deste nome que ele o referência.

A estrutura com os possíveis campos:


[IDENTIFICATION DIVISION]
PROGRAM-ID. Nome do programa
[AUTHOR. Nome do programador.]
[INSTALLATION. Nome da empresa.]
[DATE-WRITTEN. Data escrita.]
[DATE-COMPILED. Data de compilação.]
[SECURITY. Comentários de segurança.]
[REMARKS. Comentários gerais]
8

2.4.2 ENVIRONMENT DIVISION


Contém informações do ambiente que o programa será compilado,
computador que irá rodar a aplicação. Outras informações também podem
ser adicionadas como periféricos que serão utilizados.

2.4.3 DATA DIVISION


Data Division descreve a informações que serão usadas no programa.
Você precisa descrever os arquivos e campos que serão utilizados.

2.4.4 PROCEDURE DIVISION


Informa às instruções que deverão ser seguidas e tomadas para o
processamento esperado.

2.4.5 Convenções do COBOL


Da coluna de 1ª a 6ª pode se usar um numero seqüencial opcional. As
divisões, seções e parágrafos devem ser codificados a partir da oitava
coluna.

Para comentar uma linha de código, devemos colocar um asterisco na


sétima coluna, ele irá ignorar aquela linha.

Todas as outras declarações são codificadas a partir da coluna 12 ª.


Cada declaração termina com um ponto final, que deve ser acompanhado de
espaço.
Coluna de 73ª a 80ª é ignorada pelo compilador.

Abaixo temos um simples programa, que tem como objetivo pegar um


número de quatro dígitos e verificar se ele é positivo ou negativo.
Primeiramente deve se obter um número que o usuário deseja verificar, e
logo após é feita uma rotina de verificação para chegar à conclusão do
resultado.
9

000001 IDENTIFICATION DIVISION.


000002 PROGRAM-ID. Exemplo.
000003 ENVIRONMENT DIVISION.
000004 DATA DIVISION.
000005 WORKING-STORAGE SECTION.
000006 01 NUMERO PIC 9(04).
000007 01 DIVISAO PIC 9(04).
000008 01 RESUL PIC X(10) VALUE "PAR".
000009 PROCEDURE DIVISION.
000010 010-EXECUTANDO.
000011 DISPLAY(05, 05) "Digite um numero".
000012 ACCEPT (05, 26) NUMERO.
000013 DIVIDE NUMERO BY 2 GIVING DIVISAO REMAINDER DIVISAO.
000014 IF NOT(DIVISAO=0)
000015 MOVE "IMPAR" TO RESUL.
000016 DISPLAY (09, 05) "O Numero ".
000017 DISPLAY (09, 14) NUMERO.
000018 DISPLAY (09, 20) RESUL.
000019 STOP RUN.

Linha 1 temos uma definição obrigatória, a primeira divisão onde podemos


explicar a finalidade do programa.
Linha 2 Program-id é uma palavra reservada, logo a frente podemos ver que o
nome do programa é Exemplo.
Linha 3 segunda divisão onde fornece informações sobre o ambiente de
execução do programa.
Linha 4 terceira divisão onde fornece as definições dos campos e arquivos
utilizados.
Linha 5 Working-Storage Section fornece os campos que iremos usar. Outros
tipos de declaração poderiam ser usados, como File Section.
Linha 6 “01” é um nível reservado que descreve uma variável simples. A
cláusula Pic descreve as informações características que o Numero será do
tipo numérico e conterá 4 dígitos.
10

Linha 7. A clausula Pic descreve uma variável chamada Divisao que será do tipo
numérico e conterá 4 dígitos.
Linha 8 descreve uma variável do tipo alfanumérica (X) que terá 10 caracteres e
será inicializada com a frase “Positivo”.
Linha 9 quarta divisão que descreve os procedimentos do programa.
Linha 10 descreve um parágrafo dentro da procedure division, é obrigatório um
parágrafo. Ele pode ser usado como ponto de chamada, por exemplo GOTO
nome do parágrafo.
Linha 11 Display irá mostrar a frase “Digite um numero” na linha 5 coluna 5.
Linha 12 Accept irá esperar receber um numero na linha 5 coluna 26 e este
numero será armazenado na variável Numero.
Linha 13 Divide irá dividir o número informado por 2,
Giving Divisao colocará o quociente da divisão dentro da variável Divisão.
Remainder Divisao obterá o resto da divisão, e coloca dentro da variável
Divisao. Como quero obter somente o resto da divisão, atribuo as duas coisas
na mesma variável.
Linha 14 IF NOT (DIVISAO=0), nega a condição se DIVISAO é igual a zero, pois
se ela não for igual a zero é que a divisão teve resto, ou seja, é impar.
Linha 15 Move “impar” to Resul. Coloca a frase ÍMPAR dentro da variável Resul.
Linha 16 irá colocar a frase “O numero“ na posição linha 9 coluna 5.
Linha 17 irá mostrar o número que o usuário digitou na linha 9 coluna 14.
Linha 18 irá mostrar se é PAR ou IMPAR na linha 9 coluna 14.
Linha 19 irá parar a execução do programa.

2.5 Avaliação da Linguagem


COBOL é simples, não possui ponteiros, tipos definidos por usuários,
funções definidas pelo usuário. Incentiva um estilo de programação direto e
simples, mesmo porque sua estrutura hierárquica é rígida e ajuda na
11

padronização dos mesmos facilitando a legibilidade e a manutenção,


simplicidade e ortogonalidade. Além disso, COBOL atende bem aos
propósitos do seu domínio de aplicações. Com sua portabilidade e suas
facilidades, caso precise ser reutilizada em outras máquinas de diferentes
fornecedores, onde pode haver novos dispositivos, os programadores
facilmente poderão efetuar as alterações necessárias para acomodar essas
mudanças.
COBOL também pode ser considerada uma linguagem de fácil escrita,
possui poucos tipos de dados e funções. Um programador em pouco tempo
pode facilmente aprender essa linguagem.
Sua confiança é muito grande para seu domínio de aplicações, contanto
que as estruturas de dados de entrada para um programa não mude. Por ser
fácil de escrever, tende aumentar a probabilidade de exclusão de erros Se o
programa funcionar uma vez, certamente vai funcionar quantas vezes for
necessário. Existem programas que são executados a mais de 40 anos com
algumas poucas mudanças.
12

3. Conlusão
O COBOL foi uma grande inovação em sua época para o seu domínio de
aplicações. De fácil aprendizado e uma linguagem mais clara do que somente
códigos, contribuiu muito para as organizações e conquistou “adoradores” no
mundo da programação. Apesar de tão ultrapassada, ainda existem
aplicações em COBOL ativavas, sem previsões para serem migradas, pois
funcionam perfeitamente.
O COBOL possui um padrão ANSI e hoje se encontra na versão 2002, já
existem implementações para o Framework .net da Microsoft.
13

4. Referências Bibliográficas
Livro:
Teach Yourself Cobol in 24 Hours – Thane Hubbell

http://www.infonet.com.br/users/COBOL/sintaxe_da_linguagem.htm
http://cobit.mma.com.br/precursores/grace_hopper.htm
http://www.clubecobol.com.br
http://tiny-cobol.sourceforge.net/index.php
http://www.clubecobol.com.br/cc_grace.asp
http://www.turbocpage.hpg.ig.com.br/paginas/historia/historia_do_c.htm
http://www.clubecobol.com.br/cc_pq_COBOL.asp
http://www.infonet.com.br/users/COBOL/sintaxe_da_linguagem.htm
http://cobit.mma.com.br/precursores/grace_hopper.htm
http://www.cobolware.com.br/ultrapassado.html
http://www.infonet.com.br/users/COBOL/sintaxe_da_linguagem.htm

Vous aimerez peut-être aussi