1 Linguagem de Programação 2 Sumário • Sintaxe do COBOL • Regras de codificação • Formatação de nomes e pontuação • Literais e constantes figurativas • Primeiro programa: Olá, mundo!
Célia Leiko Ogawa Kawabata -
2 Linguagem de Programação 2 Sintaxe do COBOL • Em COBOL os comandos são escritos em sentenças. • A sentença termina com um ponto final e pode conter um ou mais comandos. • Exemplo:
SUBTRACT TAXA FROM PAGAMENTO
ADD BONUS TO PAGAMENTO.
Célia Leiko Ogawa Kawabata -
3 Linguagem de Programação 2 Sintaxe do COBOL • Sentenças podem ser agrupadas em parágrafos. • Um parágrafo pode conter uma ou mais sentenças. • Alguns parágrafos podem não conter sentenças.
Célia Leiko Ogawa Kawabata - Linguagem de Programação 2 4
Sintaxe do COBOL • Sentenças e parágrafos podem ser agrupados em seções. • O compilador COBOL espera que certos parágrafos e seções façam parte de qualquer programa em COBOL
Célia Leiko Ogawa Kawabata - Linguagem de Programação 2 5
Sintaxe do COBOL • Seções, parágrafos e sentenças podem ser agrupados em divisões.
Célia Leiko Ogawa Kawabata -
6 Linguagem de Programação 2 Sintaxe do COBOL • Existem apenas quarto divisões e todas são obrigatórias em um programa completo. • São elas: IDENTIFICATION DIVISION. ENVIRONMENT DIVISION. DATA DIVISION. PROCEDURE DIVISION.
Célia Leiko Ogawa Kawabata -
7 Linguagem de Programação 2 Sintaxe do COBOL • IDENTIFICATION DIVISION. – Usada para explicitar informações de identificação do programador e do programa. – Pode conter: • Identificação do programa • Identificação do programador • Data de programação • Data de compilação • Local – Todos essas informações são meros comentários para o compilador e apenas suas sintaxes são verificadas. Célia Leiko Ogawa Kawabata - 8 Linguagem de Programação 2 Sintaxe do COBOL • ENVIRONMENT DIVISION. – Usada para explicitar informações do computador usado para programação e usado para execução do programa, além de outros detalhes do computador alvo (ambiente).
Célia Leiko Ogawa Kawabata -
9 Linguagem de Programação 2 Sintaxe do COBOL • DATA DIVISION. – Usada para descrever todos os dados e arquivos utilizados no programa. A natureza de cada arquivo é detalhada, bem como a estrutura dos registros. – As informações descritas nesta divisão são usadas pelo compilador para alocar os espaços de memória necessários. – Nesta divisão são declaradas as “variáveis”.
Célia Leiko Ogawa Kawabata -
10 Linguagem de Programação 2 Sintaxe do COBOL • PROCEDURE DIVISION. – Usada para o programador escrever os comandos que são executados no programa. – Esta divisão é a parte principal do programa.
Célia Leiko Ogawa Kawabata -
11 Linguagem de Programação 2 Regras de codificação • Programas em COBOL são escritos em letras maiúsculas em uma folha de codificação. • Usualmente uma folha de codificação tem 80 colunas e 20 linhas.
Célia Leiko Ogawa Kawabata -
12 Linguagem de Programação 2 Regras de codificação
Célia Leiko Ogawa Kawabata -
13 Linguagem de Programação 2 Regras de codificação
Célia Leiko Ogawa Kawabata -
14 Linguagem de Programação 2 Regras de codificação • Colunas – 1-6: Usadas para numeração das linhas do programa. – 7: Em branco na maioria das vezes. Quando tem um asterisco significa que a linha é um comentário. Quando tem um hífen significa que a linha é continuação da linha anterior. – 8-72: Codificação do programa. – 73-80: Em branco. Ignoradas pelo compilador. Célia Leiko Ogawa Kawabata - 15 Linguagem de Programação 2 Regras de codificação • Margens – Dentre as 80 colunas existem 2 margens de programação. • Margem A: começa na coluna 8. Esta margem é usada para nomes de divisões, seções e parágrafos. • Margem B: começa na coluna 12. Qualquer sentença começa à direita desta margem e antes da coluna 72.
Célia Leiko Ogawa Kawabata -
16 Linguagem de Programação 2 Regras de codificação • Nomes de divisão são sempre seguido da palavra DIVISION e um ponto final. • Nomes de seção são sempre seguidos da palavra SECTION e um ponto final. • Palavras escritas numa mesma sentença devem ser separadas por, pelo menos, um espaço. Sem limite máximo.
Célia Leiko Ogawa Kawabata -
17 Linguagem de Programação 2 Regras de codificação • Podem ser deixadas linhas em branco no código. • Uma boa prática de programação é escrever apenas um comando por linha. • O compilador assume que existe apenas um espaço entre a coluna 72 e a margem B da próxima linha. Quando essa situação acontecer, deve-se colocar um hífen na coluna 7 da linha que contém a continuação. Célia Leiko Ogawa Kawabata - 18 Linguagem de Programação 2 Regras de codificação
Célia Leiko Ogawa Kawabata -
19 Linguagem de Programação 2 Regras de codificação
Célia Leiko Ogawa Kawabata -
20 Linguagem de Programação 2 Regras de codificação
Célia Leiko Ogawa Kawabata -
21 Linguagem de Programação 2 Regras de codificação
Célia Leiko Ogawa Kawabata -
22 Linguagem de Programação 2 Regras de codificação
Célia Leiko Ogawa Kawabata -
23 Linguagem de Programação 2 Regras de codificação
Célia Leiko Ogawa Kawabata -
24 Linguagem de Programação 2 Regras de codificação
Célia Leiko Ogawa Kawabata -
25 Linguagem de Programação 2 Regras de codificação
Célia Leiko Ogawa Kawabata -
26 Linguagem de Programação 2 Regras de codificação
Célia Leiko Ogawa Kawabata -
27 Linguagem de Programação 2 Regras de codificação
Célia Leiko Ogawa Kawabata -
28 Linguagem de Programação 2 Formação de nomes e pontuação • Para criar nomes (parágrafos, dados, etc): – Caracteres de A a Z. – Número de 0 a 9. – Hífen.
Célia Leiko Ogawa Kawabata -
29 Linguagem de Programação 2 Formação de nomes e pontuação • Deve haver pelo menos um caracter alfanumérico. • Hífen não deve ser nem o primeiro, nem o último caracter. • Não devem exceder 30 caracteres. • Vírgulas e ponto-e-vírgula podem ser usados para facilitar a leitura da sentença. São ignorados pelo compilador. Célia Leiko Ogawa Kawabata - 30 Linguagem de Programação 2 Literais e constantes figurativas • Literais numéricos podem ser formados por qualquer cadeia de números com ponto decimal (opcional) e precedido dos sinais + ou – (opcionais). • Exemplos: 1.0 +12 123.45 -7 -7.1234 Célia Leiko Ogawa Kawabata - 31 Linguagem de Programação 2 Literais e constantes figurativas • Normalmente os literais numéricos não devem ultrapassar 15 caracteres. • Literais numéricos não podem terminar com ponto.
Célia Leiko Ogawa Kawabata -
32 Linguagem de Programação 2 Literais e constantes figurativas • Literais não numéricos são aqueles que aparecem entre aspas. • Exemplo: “Olá, mundo!” “Tela de cadastro” • Normalmente literais não numéricos devem ter até 120 caracteres.
Célia Leiko Ogawa Kawabata -
33 Linguagem de Programação 2 Literais e constantes figurativas • Compiladores COBOL possuem palavras reservadas para representar constantes. São as chamadas constantes figurativas. • Exemplo ZERO, ZEROS, ZEROES SPACE, SPACES QUOTE, QUOTES HIGH-VALUE, HIGH-VALUES LOW-VALUE, LOW-VALUES
Célia Leiko Ogawa Kawabata -
34 Linguagem de Programação 2 Primeiro programa: Olá, mundo! • A execução deste exemplo supõe a utilização dos seguintes softwares: • Sistema operacional: Windows XP. • Compilador: Micro Focus COBOL 3.0, instalado no diretório C:\COB30. • Editor de texto: Notepad, Context ou Textedit. Os dois últimos possuem highlighting para COBOL. Célia Leiko Ogawa Kawabata - 35 Linguagem de Programação 2 Primeiro programa: Olá, mundo! • Abra o editor de texto (unicode). • Seguindo as regras de codificação, digite o seguinte código fonte.
Célia Leiko Ogawa Kawabata -
36 Linguagem de Programação 2 Primeiro programa: Olá, mundo! • Salve o arquivo no diretório C:\COB30 com o nome de “olamundo.cbl”. • Dica: use aspas quando for salvar o arquivo para que o mesmo não seja salvo como olamundo.clb.txt. • Normalmente, utilizam-se as extensões cob e cbl para arquivos de código fonte em COBOL.
Célia Leiko Ogawa Kawabata -
37 Linguagem de Programação 2 Primeiro programa: Olá, mundo! • Abra o Prompt de Comando (Prompt do MSDOS) e digite o comando cd c:\cob30 <enter> • Para compilar o programa digite o comando cobol olamundo.cbl <enter> Object-file: olamundo <enter> Source listing: olamundo <enter> Object listing: olamundo <enter>
Célia Leiko Ogawa Kawabata -
38 Linguagem de Programação 2 Primeiro programa: Olá, mundo!
Célia Leiko Ogawa Kawabata -
39 Linguagem de Programação 2 Primeiro programa: Olá, mundo! • Para linkar o arquivo objeto, digite o comando link olamundo <enter> Run file:<enter> List file:<enter> Libraries:<enter> Definitions file:<enter>
Célia Leiko Ogawa Kawabata -
40 Linguagem de Programação 2 Primeiro programa: Olá, mundo!
Célia Leiko Ogawa Kawabata -
41 Linguagem de Programação 2 Primeiro programa: Olá, mundo! • Para executar o programa, digite olamundo <enter>
Célia Leiko Ogawa Kawabata -
42 Linguagem de Programação 2 Primeiro programa: Olá, mundo!