Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Apostila programação, Notas de estudo de Ciências Biologicas

Descreve sobre o compilador Pascal zim.

Tipologia: Notas de estudo

2011

Compartilhado em 26/11/2011

yara-santos-10
yara-santos-10 🇧🇷

1 documento

1 / 26

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
UNIVERSIDADE FEDERAL DO CEARÁ
CENTRO DE TECNOLOGIA
PROGRAMA DE EDUCAÇÃO TUTORIAL
APOSTILA DE
Realização:
Fortaleza, Fevereiro/2010
UNIVERSIDADE FEDERAL DO CEARÁ
CENTRO DE TECNOLOGIA
PROGRAMA DE EDUCAÇÃO TUTORIAL
PROGRAMAÇÃO
PROGRAMA DE EDUCAÇÃO TUTORIAL
PROGRAMAÇÃO
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a

Pré-visualização parcial do texto

Baixe Apostila programação e outras Notas de estudo em PDF para Ciências Biologicas, somente na Docsity!

UNIVERSIDADE FEDERAL DO CEARÁ

CENTRO DE TECNOLOGIA

PROGRAMA DE EDUCAÇÃO TUTORIAL

APOSTILA DE

Realização:

Fortaleza, Fevereiro/

UNIVERSIDADE FEDERAL DO CEARÁ

CENTRO DE TECNOLOGIA

PROGRAMA DE EDUCAÇÃO TUTORIAL

APOSTILA DE PROGRAMAÇÃO

PROGRAMA DE EDUCAÇÃO TUTORIAL

PROGRAMAÇÃO

Sumário

    1. Introdução
    1. Conceitos Básicos
    1. Tipos de Linguagens de Programação
    1. Compiladores e compilação
    1. Exemplos de Linguagens de Programação
    1. IDE’s
    1. Introdução ao Pascalzim
  • 7.1. A barra de Tarefas
  • 7.2. O Menu de Comandos ................................................................................................................................
  • 7.3. A Barra de Status .......................................................................................................................................
    1. Estrutura de um programa em Pascal .............................................................................................................
  • 8.1. Cabeçalho do Programa .............................................................................................................................
  • 8.2. Área de Declarações ...................................................................................................................................
  • 8.3. Corpo do Programa ....................................................................................................................................
    1. Variáveis .........................................................................................................................................................
  • 9.1. Tipos de Variáveis ......................................................................................................................................
  • 9.2. Atribuição de Valores .................................................................................................................................
    1. Entrada e Saída de dados ...........................................................................................................................
  • 10.1. Saída de dados ...........................................................................................................................................
  • 10.2. Entrada de dados .......................................................................................................................................
    1. Operadores ................................................................................................................................................
  • 11.1. Operadores Aritméticos..............................................................................................................................
  • 11.2. Operadores Lógicos ....................................................................................................................................
  • 11.3. Operadores de Comparação .......................................................................................................................
    1. Estruturas de Controle de Fluxo .................................................................................................................
  • 12.1. Comando if then .....................................................................................................................................
  • 12.2. Comando If then else ..........................................................................................................................
  • 12.3. Ifs aninhados ..............................................................................................................................................
    1. Estruturas de Repetição .............................................................................................................................
  • 13.1. Comando for ..............................................................................................................................................
  • 13.2. Comando While ..........................................................................................................................................
  • 13.3. Comando Break ..........................................................................................................................................
    1. Exercícios Propostos ...................................................................................................................................

Algoritmo em pseudocódigo:

ALGORITMO DECLARE N1, N2, M NUMÉRICO ESCREVA “Digite dois números” LEIA N1, N M  N1 * N ESCREVA “Multiplicação = ”, M FIM_ALGORITMO.

Exemplo do Algoritmo de Euclides

Às vezes, quando lidamos com números grandes, torna-se difícil encontrar o máximo divisor comum entre os dados números. O algoritmo de Euclides ajuda-nos a encontrar o máximo divisor comum entre dois números inteiros diferentes de zero de uma forma simples e eficiente. Veja:

Figura 2 Calculando o mdc entre 1128 e 336. Divide-se 1128 por 336, escreve-se o quociente acima do 336, e o resto embaixo do 1128. Depois se repete este valor ao lado do 336, e assim por diante. Quando o resto for zero, o mdc entre os números será o número mais à direita na linha central do algoritmo, nesse caso o 24.

Quando queremos escrever (criar, desenvolver) um programa para realizar uma determinada tarefa precisamos utilizar uma linguagem que tanto o computador quanto o desenvolvedor do programa (programador) entendam. Essa linguagem é chamada de linguagem de programação.

Quando “traduzimos” o algoritmo para alguma linguagem de programação, estamos codificando esse algoritmo, pois a linguagem de programação possui sintaxe e semântica definidas assim como o nosso código, o Português.

O código escrito pelo programador em uma determinada linguagem é denominado código-fonte (source code).

3. Tipos de Linguagens de Programação

As linguagens de programação podem ser classificadas em:

a) Linguagens de alto nível: onde as instruções se assemelham ao vocabulário humano (read, print, if, then, else, etc...). Exemplo: Basic, Java, Pascal, etc.

b) Linguagens de baixo nível: onde as instruções se assemelham mais à linguagem de máquina. A linguagem de máquina é a linguagem binária. Por serem dispositivos eletrônicos, apenas

trabalham dados representados na forma de alto e baixo nível de tensão. São úteis para programar hardware. Exemplo: Assembly.

Vale ressaltar que há linguagens, como no caso da linguagem C, que se enquadram em um nível intermediário, pois apresentam sintaxe parecida com a linguagem humana mas que trabalham também com instruções de baixo nível.

As linguagens podem ser classificadas pelo paradigma que suportam (usam). Um paradigma é a maneira (modelo, jeito) que o programador vai desenvolver o seu programa. A maioria das linguagens suporta apenas um tipo de paradigma. O paradigma do Pascal, linguagem que estudaremos, é procedural, isto é, o programador irá desenvolver um programa através de blocos de comando.

Paradigma procedural: Os conjuntos de instruções são organizados em blocos.

4. Compiladores e compilação

Os computadores utilizam internamente o sistema binário. Através deste sistema, todas as quantidades e todos os valores de quaisquer variáveis poderão ser expressos através de uma determinada combinação de dígitos binários, ou seja, usando apenas os algarismos 1 e 0. O computador necessita que alguém ou algo traduza as informações colocadas no código fonte (aquele escrito pelo programador em uma determinada linguagem) para um código escrito apenas com 1 e 0. Este código escrito com o sistema binário é chamado de código executável.

O programa responsável por converter um código-fonte em programa executável (binário) é o compilador. Ao processo de conversão denominamos de compilação.

O tempo em que o código é transformado de código fonte escrito em uma linguagem de programação para o código em linguagem de máquina (código objeto) é denominado tempo de compilação. O tempo em que o programa está sendo executado é denominado tempo de execução.

Figura 3

5. Exemplos de Linguagens de Programação

BASIC: Linguagem de programação de alto nível, não estruturada e interpretada. Sua principal característica reside na simplicidade, daí o nome: Beginner All-purpose Symbolic Instruction Code. Originou a plataforma de desenvolvimento Microsoft visual Basic.

Tabela 1 - Quadro resumo

Tipo Nível Paradigma BASIC Interpretado Alto Procedural C Compilado Médio Procedural C++ Compilado Alto Orientado a Objetos Java Híbrido Alto Orientado a Objetos Object Pascal Compilado Alto Orientado a Objetos Pascal Compilado Alto Procedural Visual Basic Híbrido Alto Orientado a Objetos

6. IDE’s

IDE’s (Integrated Development Environment – Ambiente de Desenvolvimento Integrado) são softwares ou pacotes de softwares que facilitam a tarefa de programação. Geralmente contam com um editor de texto (com recursos de ressaltar a sintaxe por meio de cores, identificação de erros, identificação automática, autocomplementar, etc.), depurador compilador e linker. O uso de IDE’s permite implementação do modelo Rapid Application Development (RAD) ou Desenvolvimento Rápido de Aplicação (em português), que é um modelo de processo de desenvolvimento de software interativo e incremental que enfatiza um ciclo de desenvolvimento extremamente curto (entre 60 e 90 dias). Exemplos:

DEV C++: IDE livre voltado para a linguagem C/C++ para a plataforma Microsoft Windows.

NetBeans: Atualmente é uma das melhores IDE’s existentes. Além de ser livre, contém diversos recursos e embora seja muito difundida entre programadores Java, tem suporte para as linguagens C, C++, Assembly, Python, além de suporte para UML, PHP, XML e para desenvolvimento SOA. Há versões tanto para GNU/Linux como para Microsoft Windows.

Visual Studio: Pacote proprietário da Microsoft voltado para a plataforma .NET. Contêm os programas: Visual Basic, Visual C++ e Visual C#.

Delphi: IDE proprietária da Borland para a linguagem Delphi (Object Pascal). Plataforma Microsoft Windows.

Abrir (Ctrl+A): Abre um arquivo anteriormente gravado, substituindo o texto presente. Se este tiver sido modificado, o Pascalzim pedirá para salvá-lo antes que seja sobreposto.

Novo (Ctrl+O): Cria uma nova tela inicializando o código, texto presente no editor. Se este tiver sido modificado, o Pascalzim pedirá sua confirmação para salvá-lo antes que seja sobreposto.

Salvar (Ctrl+S): Grava imediatamente o texto presente no editor. Na primeira vez que um novo texto é gravado, o Pascalzim pede seu nome e sua localização.

Imprimir (Ctrl+P): Imprime imediatamente na impressora padrão o texto presente no editor. Para configurar a impressão, use o comando Imprimir do menu Arquivo.

Localizar (Ctrl+L): Localiza no texto presente no editor determinada palavra especificada.

Cortar (Ctrl+X): Apaga o texto selecionado, armazenando-o em uma área de transferência.

Copiar (Ctrl+C): Copia o texto selecionado para a área de transferência.

Colar (Ctrl+V): Copia o texto selecionado para a área de transferência.

Desfazer (Crtl+Z): Desfaz o último comando efetuado.

Refazer (Ctrl+R): Refaz o último comando desfeito.

Executar (F9): Inicia (ou continua) a execução automática do código apresentado no editor.

Passo a Passo: Inicia (ou continua) a execução linha por linha do código, dando ao usuário a oportunidade de acompanhar o fluxo de execução, os valores das variáveis e a pilha de ativação dos subprogramas.

Pascalzim Explorer: Procura nas unidades de disco os programas existentes e permite executá-los e/ou modificá-los.

Ajuda (F1): Possibilita acesso às páginas de ajuda e às informações sobre o Pascalzim.

7.2. O Menu de Comandos

O Pascalzim possui um menu de comandos com seis opções que possibilitem executar diversas tarefas operacionais. Você poderá ter acesso a esse menu de três formas diferentes:

A primeira pode ser conseguida com o pressionamento da tecla de função e em seguida usando as teclas setas para movimenta o cursor sobre as opções desejadas.

A segunda forma pode ser conseguida com o pressionamento da tecla + a letra que estiver grifada em maiúsculo, que é a primeira letra de cada opção do menu.

A terceira forma poderá ser conseguida com a utilização de um mouse, cujo ponteiro deverá se posicionado sobe a opção desejada e em seguida ser dado um clique.

Para sair do menu u de qualquer caixa de diálogo que venha a se acionada basta pressionar a tecla . O menu do Pascalzim apresenta os seguintes comando a saber:

  • Arquivo

Esta opção possibilita executar operações de controle com os arquivos. Desta forma é possível: Criar uma janela de trabalho (Novo), abrir um programa existente (Abrir), salvar um programa em disco (Salvar), salvar um programa em disco co outro nome (Salvar Como), fechar a janela ativa (Fechar), fechar todas as janelas ativas (Fechar Todos), imprimir o arquivo da janela ativa (Imprimir) e Sair do comando Arquivo (Sair).

  • Editar

Esta opção possibilita executar operações de editor do programa, sendo possível remover, movimentar e copiar vários textos que estejam selecionados. Desta forma, é possível: Desfazer (Desfazer) e refazer (Refazer) operações efetuadas com a edição, Remover o texto previamente selecionado (Cortar), copiar um texto selecionado do editor para uma área de transferência (Copiar), copiar um texto da área de transferência para o editor (Colar), selecionar todo o texto pertencente ao editor (Selecionar Tudo), localizar uma sequencia de caracteres por outra (Localizar), substituir uma sequencia de caracteres por outra (Substituir) e mover o cursor para uma linha previamente selecionada (Ir para Linha).

  • Compilar

Esta opção possibilita compilar o programa. Desta forma é possível: Compilar o programa da janela ativa (Executar!), compilar o programa passo a passo inclusive as suas sub-rotinas existentes e, também, gerar um arquivo executável do Ms-Dos (Gerar Executável).

  • Ferramentas

Esta opção possibilita a utilização de ferramentas configuradas pelo usuário. Desta forma é possível: Acessar o banco de dados de programas existentes em disco (Pascalzim Explorer), acessar o bloco de notas do Windows (Bloco de Notas), acessar a calculadora (Calculadora), acessar a internet através do navegador Internet Explorer (Internet Explorer), acessar o Prompt de comandos do Ms-Dos (Prompt do MS-DOS) e também permite o acesso ao Windows Explorer (Windows Explorer).

  • Janela

Este comando possibilita o controle das janelas que estejam abertas. Desta forma é possível: Configurar a cor do Editor para o estilo Clássico azul (Estilo Clássico), estilo escuro (Estilo Dark do Pascal), estilo branco (Estilo Moderno), além disso, é possível ordenar as janelas em cascata (Cascata), dividir as janelas horizontalmente (Dividir Horizontalmente) ou em lado a lado (Lado a Lado).

  • Ajuda

Este comando permite executar o modo ajuda do Pascalzim. O modo de ajuda poderá ser executado de qualquer parte do programa com a tecla de função ou <Ctrl + F1> para visualizar aplicações de instruções que estejam marcadas com o posicionamento do cursor sobre elas.

7.3. A Barra de Status

Situada na parte inferior da tela, esta barra contém três painéis: o primeiro mostra a linha e a coluna onde o cursor está, o segundo mostra a palavra (Ctrl+Espaço para templates), onde indica as

8.2. Área de Declarações

Esta área é utilizada para validar o uso de qualquer tipo de identificador que não seja predefinido, estando divida em sete sub-áreas: uses, label, const, type, var, procedure e function. No II Curso Pré-engenharia, vamos estudar apenas a sub-área var. Esta é utilizada na declaração das variáveis que serão utilizadas durante a execução de um programa, assim como o seu tipo. Estudaremos declaração de variáveis no capítulo seguinte.

8.3. Corpo do Programa

Nessa área escreveremos nossos algoritmos utilizando as funções da linguagem Pascal e as declarações feitas na área anterior. Aqui está o programa propriamente dito, isto é, a seqüência de instruções que daremos à máquina para que ela crie um programa que execute as ações que desejamos.

Iniciamos o corpo do programa com a instrução BEGIN e finalizamos com a instrução END seguida de um ponto (. ). O uso dessas instruções caracteriza o que chamamos de bloco.

A estrutura do corpo do programa pode ser exemplificada pela figura abaixo.

Figura 7 – corpo do programa

9. Variáveis

Em programação, variáveis são regiões da memória do computador previamente identificadas, que têm por finalidade armazenar informações (dados) de um programa temporariamente. Podem ser vistas como um papel, inicialmente em branco, onde se podem escrever valores (sejam numéricos, de texto ou lógicos) no decorrer da execução do programa. Uma variável pode armazenar apenas um valor por vez. Sendo considerado como valor o conteúdo de uma variável, este valor está associado ao tipo de dado da variável. Para declarar variáveis na linguagem Pascal, devemos obedecer à seguinte sintaxe:

Figura 8 - Declaração de Variáveis

Por exemplo:

Figura 9 - Exemplo de declaração de variáveis

Nesse exemplo estamos declarando as variáveis de nome Soma, Total e Salário como sendo do tipo REAL; Idade e Contador como sendo do tipo INTEGER; e Nome como sendo do tipo STRING.

9.1. Tipos de Variáveis

Veremos aqui os principais tipos de variáveis que são utilizados na linguagem Pascal.

Tabela 2 - Principais tipos de variáveis em Pascal

Tipo Descrição Tamanho

Boolean

Variáveis desse tipo podem armazenar apenas dois valores distintos: True ou False (Verdadeiro ou Falso).

8 bits (1 byte)

Char Variáveis apenas um caractere.^ desse^ tipo podem^ armazenar 8 bits (1 byte)

Byte Armazena valores inteiros positivos entre 0 e 255, inclusive. 8bits (1 byte)

Integer Armazena negativos entre -32768 e 32767.^ valores^ inteiros^ positivos ou 16 bits (2 bytes)

Longint Armazena negativos entre -2147483648 e 2147483647.^ valores^ inteiros^ positivos^ ou 32 bits (4 bytes)

Shortint Armazena negativos entre -128 e 127.^ valores^ inteiros positivos^ ou 8 bits (1 byte)

Word Armazena valores inteiros positivos entre 0 e 65535. 16 bits (2 bytes)

Double Armazena valores reais. Possui precisão de 15 dígitos. 8 bytes

Real Armazena valores reais. Possui precisão de 11 dígitos. 6 bytes

String Armazena cadeias de caracteres frases).^ (palavras ou^ Depende do valor da variável

9.2. Atribuição de Valores

Para atribuir valores a uma variável, utilizamos a seguinte construção:

Nome-da-Variável := Valor;

Vejamos este exemplo:

Figura 10 - Atribuindo valores a variáveis

Como vimos, é muito simples exibir mensagens simples na tela do computador. Agora, se quisermos exibir mensagens juntamente com valores de variáveis?

Vejamos esse exemplo:

Figura 13 - Exibindo mensagens com variáveis Aqui estamos misturando textos com valores armazenados em variáveis. Quando compilamos esse programa ele gera o seguinte resultado:

Figura 14 - Programa rodando

Repare: onde não se usou aspas simples, dentro do writeln, o que foi mostrado na tela foi o valor contido na variável, e não o seu nome. Exemplo: onde seria exibido “Nome1”, exibiu-se “Hexa”, que era o valor contido na variável.

10.2. Entrada de dados

Em Pascal, a entrada de dados é feita utilizando o comando readln(). A sintaxe desse comando é a seguinte:

readln(Variável1, Variável2, ...);

Nesse caso, o programa vai parar sua execução até que o usuário digite algum valor. Ao digitar o valor e pressionar a tecla ENTER, o valor digitado será armazenado na Variável1 e o programa esperará

novamente por um valor, mas o armazenará na Variável2. Isso se repete até que todas as variáveis listadas estejam preenchidas com algum valor.

Vejamos um programa que utiliza entrada de dados pelo usuário:

Figura 15 - Programa que trabalha com entrada de dados

Que gera o seguinte resultado:

Figura 16 - Programa funcionando

11.Operadores

Os operadores, como o nome sugere, nos permitem realizar operações entre variáveis numéricas. Essas operações podem ser algébricas, lógicas ou de comparação. Dessa forma, existem operadores diferentes para cada tipo. Veremos a seguir.

11.1. Operadores Aritméticos

Resumiremos os operadores aritméticos na seguinte tabela: Tabela 3 - Operadores aritméticos

Operador Função

  • Soma
  • Subtração
  • Multiplicação / Divisão simples div Divisão inteira mod Resto da divisão inteira

Tabela 5 - Operadores de Comparação

Operador Função = Igualdade <> Diferença

Maior que < Menor que = Maior ou igual <= Menor ou igual

Assim como nos operadores lógicos, a utilização dos operadores de comparação ficará mais evidente no estudo das Estruturas de controle de fluxo.

12.Estruturas de Controle de Fluxo

Essas estruturas, também chamadas de Estruturas de Decisão, garantem que alguns comandos só sejam executados se uma ou mais condições sejam satisfeitas.

Exemplo: só podemos calcular a área de um triângulo de lados de comprimento x, y e z se x < y + z, y < x + z e z < y + x. Caso contrário, é aconselhável que o programa avise ao usuário de que não existe um triângulo para aqueles valores de comprimentos dos lados.

12.1. Comando if ... then

Esta estrutura define se um comando ou bloco de comandos (de ações) será realizado pelo programa, a partir da verificação de uma ou mais condições. Sua sintaxe é a seguinte:

A condição é determinada utilizando-se operadores lógicos, matemáticos e de comparação. O mecanismo desta estrutura é simples: se o valor da condição for verdadeiro (true), o bloco de comandos será executado. Caso contrário, o programa ignorará o bloco de comandos contido no interior do if ... then.

Exemplo de programa em que se utiliza da estrutura de decisão if ... then:

Figura 14 – Uma aplicação básica do comando if ... then.

Compilando, obtemos o seguinte:

Figura 15 – Programa em execução.

Repare: se tivéssemos digitado os mesmo números, mas em ordem inversa, o programa não teria feito mais nada (Questione-se: por quê?).

Observação: num mesmo comando if ... then pode-se ter várias condições a serem satisfeitas (pense no exemplo dos lados do triangulo).

12.2. Comando If ... then ... else

Na maioria dos casos, quando verificamos uma condição, queremos que uma ação seja tomada no caso da condição ser satisfeita, mas também queremos que outra ação seja tomada no caso da condição não ser verificada. Para isso existe a estrutura supracitada, cuja sintaxe é a que segue (atenção à ausência de ponto-e-vírgula antes do comando else):

Exemplo: se fazemos um programa para verificar se um número é múltiplo de outro, queremos que o programa diga que é, caso o resto da divisão de um pelo outro seja zero, mas também queremos que o programa diga que não é, caso o resto da divisão seja diferente de zero. Veja:

Figura 16 – Aplicação simples do comando if ... then ... else.