A Linguagem Pascal e o Ambiente de Programação Dev-Pascal Introdução à Ciência da Computação I Março/2004
Introdução (1 de 3) Homenagem a Blaise Pascal, filósofo e matemático do século XVII. Desenvolvida por Niklaus Wirth (1968) em Zurique, na Suiça no instituto de informática da ETH (Eidgenössische Technische Hochschule). A criação da linguagem pascal teve por objetivos: Ser uma linguagem simples Incentivar a produção de programas claros e facilmente legíveis para os usuários Utilizar boas técnicas de programação.
Introdução (2 de 3) Definições importantes: Algoritmo: é uma seqüência ordenada de passos executáveis e precisamente definidos, que manipulam um conjunto de dados a fim de obter um resultado. Programa: é uma seqüência de comandos que descrevem as ações que você deseja que o computador realize, ou seja, um programa consiste na tradução de um algoritmo em uma forma inteligível para a máquina, que é feito com o uso de uma linguagem de programação. Programa-fonte: é um programa descrito/especificado em uma linguagem de programação de alto-nível.
Introdução (3 de 3) Compilação Traduz o programa fonte para o programa objeto (.obj). Esses arquivos contêm um código intermediário que não pode ser entendido na exibição e nem na impressão. Programa Fonte Tradutor (Compilador) Programa Objeto Composição O editor de ligação (linker) toma um ou mais arquivos.obj e processa-os juntos para produzir um único arquivo executável com a extensão.exe. Subprogramas Compilados Independentemente Editor de Ligação Execução Com o arquivo executável criado, o programa já pode ser executado. Depois do comando de execução (o nome do arquivo executável) entre com os dados exigidos pelo programa (se necessário) e espere pelos resultados. Dados Programa Executável Resultados
Roteiro para utilização do ambiente Dev-Pascal Esta é a tela inicial do Dev-Pascal
Criação de Novo Projeto Para criar um novo projeto clique na opção File do menu principal e depois em New Project
Criação de Novo Projeto Nesse momento, vários tipos de templates são apresentados, escolha a opção Console Application. Em seguida, dê um nome para o seu projeto e escolha onde deseja salvá-lo.
Criação de Novo Projeto Esta é a tela inicial de um novo projeto
Edição de um Programa Pascal Após a criação de um novo projeto, digite o seguinte programa para teste: {Este programa calcula e imprime o fatorial de um número N lido do teclado} program cobaia; var fat, m, n: integer; {Declaração de Variáveis a serem utilizadas} begin {Início do programa} writeln('digite o valor de N:'); readln(n); fat:=1; for m:=2 to N do {Cálculo do Fatorial} fat:= fat * m; writeln('','fatorial de ',N,' = ',fat); {Impressão do resultado} readln; end.
Edição de Novo Projeto Tela contendo o programa editado
Salvando o arquivo Para salvar um novo arquivo clique na opção File do menu principal e depois em Save unit
Arquivo salvo O arquivo recebeu o nome de cobaia.pas
Compilação e Execução Após o programa ter sido editado e salvo, a compilação e a execução são os próximos passos a serem realizados para colocar o programa em funcionamento. Na opção Execute do menu principal existem vários itens relativos à compilação e execução dos programas: Compile: faz a verificação de erros sintáticos e de composição do código fonte Run: executa um programa que já foi compilado com sucesso Compile and Run: compila o código fonte e se não houver erros a janela de execução é aberta automaticamente Rebuild all: realiza a compilação de todas as unidades de código.
Complilando o programa (1 de 2) Para complilar um programa clique na opção Execute do menu principal, depois em Compile.
Compilando um programa (2 de 2) Após o programa ser compilado, uma tela será exibida com os erros encontrados no processo de compilação. Se nenhum erro for encontrado, será exibida uma tela como a mostrada abaixo. Para continuar editando o programa, clique em Continue Para executar o programa, clique em Execute
Executando um programa (1 de 3) Ao clicar no botão Execute, o programa será executado em modo Console, já que foi este o template selecionado na criação do projeto.
Executando um programa (2 de 3) Digite um número qualquer, maior do que zero e sem seguida tecle ENTER.
Executando um programa (3 de 3) O fatorial do número digitado será impresso na tela.
Criação de Novo Arquivo Existe outra opção para a edição de programas mais simples, especialmente para o caso em que o programa é composto por um único arquivo. Nesse caso, ao invés de se criar um Novo Projeto criase um Novo Arquivo, através da opção New source file presente no menu File.
Criação de Novo Arquivo Para criar apenas um arquivo.pas clique em File no menu principal e em seguida na opção New source file.
Criação de Novo Arquivo Tela de Novo Arquivo criado com o template default.
Criação de Novo Arquivo Atenção: o template gerado automaticamente é utilizado para a criação de novos arquivos dentro de um projeto! Para realizar a edição de um único programa Pascal é necessário que esse template seja substituído.
Criação de Novo Arquivo O template default para a criação de novos arquivos.pas é : unit Untitled; interface implementation begin end. Para alterá-lo clique em Options no menu principal, depois em Environment Options, escolha a opção Misc e altere o texto para: program Untitled; begin end.
Criação de Novo Arquivo Para criar um arquivo.pas com o novo template clique em File e, em seguida, em New source file.
Criação de Novo Arquivo Arquivo.pas criado com o novo template.
Edição de Novo Arquivo Tela do programa cobaia.pas editado sem a criação de um projeto.
Configurações Importantes Menu Options : configurações necessárias para a execução do compilador e configurações de ambiente. Configurações do Compilador Configurações do Ambiente Dev-Pascal
Opções de Compilação - Diretórios O compilador pode buscar os arquivos incluídos nos programas em vários diretórios Pode-se adicionar comandos específicos de compilação Pode-se alterar ou adicionar diretórios, mas somente um diretório Bin deve ser configurado.
Configurações de Ambiente Misc. Código default gerado durante a criação de um novo arquivo fonte, que pode ser modificado.
Erros O programa COBAIA.PAS não possui nenhuma ocorrência de erros, mas isto não reflete a realidade de um programador(a). Normalmente, são cometidos erros de codificação, edição ou mesmo erros na solução dos problemas. A detecção de erros durante as etapas de processamento de um programa é um fato bastante comum. De forma geral, pode-se ter as seguintes categorias de erros: Erros Sintáticos Erros de Composição Erros de Execução Erros Semânticos.
Erros sintáticos (1 de 2) Erros detectados durante a etapa de compilação são, em geral, erros relativos às normas sintáticas da linguagem. Isto é, como toda linguagem, uma linguagem de programação também possui uma sintaxe definida e que deve ser respeitada. Por exemplo, na linguagem Pascal, a declaração de variáveis possui a seguinte sintaxe: VAR [lista_de_variáveis] : [tipo] lista_de_variáveis: IDENTIFICADOR [, IDENTIFICADOR] tipo: INTEGER, REAL, STRING, etc.
Erros sintáticos (2 de 2) Na linha 2, não existe o tipo intoger, se compilar novamente este programa, o Ambiente do Dev-Pascal produzirá algumas mensagens de erros, COMPILE e veja quais são esses erros!
Erros sintáticos (2 de 2) Foram encontrados 4 erros na tentativa de compilação deste programa!
Erros de Composição São erros detectados durante a fase de composição (edição), e usualmente se relacionam a referências não resolvidas de funções ou sub-rotinas Por exemplo, ao invés de SIN(X) for escrito SEN(X) em um programa fonte, para indicar a função seno, este erro deverá ser detectado durante a etapa de composição (o Ambiente não localiza nas bibliotecas utilizadas pelo programa a função SEN(X)). O ambiente retornará mensagens de erro do tipo: undeclared identifier `SEN(X)' (first use in this routine).
Erros de Execução São erros detectados durante a fase de execução. Fazem com que a execução do programa seja interrompida, ao mesmo tempo em que mostra na tela mensagens indicativas (run-time error). Estas mensagens nem sempre são explícitas ou fáceis de interpretar. Erros mais comuns: Divisão por ZERO; Raiz quadrada de um número negativo; Overflow (estouro do tamanho de uma variável); Acessos a arquivos não definidos, etc.
Erros Semânticos Este é o PIOR tipo de erro! São os erros presentes no projeto lógico do programa (algoritmo realizado erroneamente). Esses erros provocam resultados indesejáveis de processamento, sem que sejam emitidas mensagens indicativas em qualquer uma das etapas deste processamento. Sua correção exige, em geral, revisão completa de toda concepção algorítmica do programa, ao final da qual se devem reiniciar as atividades de processamento. São os erros mais difíceis de serem encontrados pelo usuário! Por exemplo, se ao invés de FAT := 1 colocar FAT := 0. O que acontece?