18
Linguagens de Programação Pedro Lopes MÓDULO 4- Subprogramas (Procedimentos e Funções) 2010/2011

Linguagens de Programação Pedro Lopes MÓDULO 4- Subprogramas (Procedimentos e Funções) 2010/2011

Embed Size (px)

Citation preview

Page 1: Linguagens de Programação Pedro Lopes MÓDULO 4- Subprogramas (Procedimentos e Funções) 2010/2011

Linguagens de Programação

Pedro Lopes

MÓDULO 4- Subprogramas (Procedimentos e Funções)

2010/2011

Page 2: Linguagens de Programação Pedro Lopes MÓDULO 4- Subprogramas (Procedimentos e Funções) 2010/2011

2

Sumário

Abordagem Top-down e subalgoritmos – exemplificação;

Blocos de um programa;

Variáveis globais e locais;

Realização e Correcção de uma Ficha de Trabalho.

Page 3: Linguagens de Programação Pedro Lopes MÓDULO 4- Subprogramas (Procedimentos e Funções) 2010/2011

3

Objectivos

Compreender a abordagem Top-down e subalgoritmos – exemplificação;

Identificar os blocos de um programa;

Compreender e Identificar as variáveis globais e locais.

Page 4: Linguagens de Programação Pedro Lopes MÓDULO 4- Subprogramas (Procedimentos e Funções) 2010/2011

4

Fase Inicial da elaboração de algoritmos

Analisar o problema e identificar os objectivos principais do algoritmo

Se necessário, dividir o algoritmo em subalgoritmos

Page 5: Linguagens de Programação Pedro Lopes MÓDULO 4- Subprogramas (Procedimentos e Funções) 2010/2011

5

Abordagem Top Down e subalgoritmos

A abordagem de um problema ou situação – para a formulação de um algoritmo ou programa – pode ser efectuada segundo o método conhecido por TOP DOWN, abordagem descendente ou do topo para a base.

Este método é tanto mais útil quanto mais extenso ou complexo for o problema e o algoritmo.

Page 6: Linguagens de Programação Pedro Lopes MÓDULO 4- Subprogramas (Procedimentos e Funções) 2010/2011

6

Abordagem Top Down

Problema como um todo

Problema decomposto em Blocos

Blocos cada vez mais pequenos

Page 7: Linguagens de Programação Pedro Lopes MÓDULO 4- Subprogramas (Procedimentos e Funções) 2010/2011

7

Abordagem Top Down e subalgoritmos (cont.)

Segundo o referido método, começa-se por identificar as principais partes em que pode dividir-se o problema ou o algoritmo;

Em seguida, passa-se ao desenvolvimento gradual de cada uma dessas partes, até chegarmos às operações ou instruções concretas que devem ser codificadas.

Page 8: Linguagens de Programação Pedro Lopes MÓDULO 4- Subprogramas (Procedimentos e Funções) 2010/2011

8

Abordagem Top Down e subalgoritmos (cont.)

As partes em que um algoritmo pode ser dividido são chamadas subalgoritmos.

Em programação, os subalgoritmos podem ser designados, genericamente, por subprogramas.

Rotina: Quando no decorrer do programa, repetimos várias vezes as mesmas instruções.

Page 9: Linguagens de Programação Pedro Lopes MÓDULO 4- Subprogramas (Procedimentos e Funções) 2010/2011

9

SubProgramas (cont.)

Em Pascal, os subprogramas podem ser de dois tipos:

PROCEDURE (PROCEDIMENTO) – subprograma ou rotina que efectua um determinado conjunto de tarefas;

FUNCTION (FUNÇÃO) – subprograma ou rotina que, para além de poder realizar um conjunto de operações (tal como um procedimento), tem a particularidade de devolver um determinado valor no ou nos pontos do programa em que for chamado ou utilizado.

Page 10: Linguagens de Programação Pedro Lopes MÓDULO 4- Subprogramas (Procedimentos e Funções) 2010/2011

10

SubProgramas (cont.)

Program Multiplos;Var num, quant, i, mult: integer;Begin

Writeln (‘Cálculo de Multiplos: ’);Writeln (‘Introduza um número: ’);Readln (num);Writeln (‘Quantos múltiplos quer:

’);Readln (quant);For i:= 1 to quant DoBegin

mult:= i * num;Writeln (mult);

EndEnd.

Program Multiplos;Var num, quant, i, mult: integer;Procedure ObterDados;begin

Writeln (‘Cálculo de Multiplos: ’);Writeln (‘Introduza um número: ’);Readln (num);Writeln (‘Quantos múltiplos quer: ’);Readln (quant);

End;Procedure CalcularMultiplos;Begin

For i:= 1 to quant DoBegin

mult:= i * num;Writeln (mult);

EndEnd;Begin

ObterDados;CalcularMultiplos;

End.

Page 11: Linguagens de Programação Pedro Lopes MÓDULO 4- Subprogramas (Procedimentos e Funções) 2010/2011

11

Objectivos dos Sub Programas

Os subprogramas destinam-se principalmente a:

Permitir a criação de rotinas ou partes de código que podem ser usadas mais do que uma vez num programa;

Ajudar a estruturar melhor o programa, permitindo que determinadas porções de código sejam escritas de uma forma mais autónoma e que a leitura do programa resulte mais fácil e compreensível.

Page 12: Linguagens de Programação Pedro Lopes MÓDULO 4- Subprogramas (Procedimentos e Funções) 2010/2011

12

Blocos de um Programa

Um conjunto formado por uma parte declarativa e uma parte operativa forma aquilo que se designa por bloco.

Um programa pode ter, para além do bloco principal, outros blocos particulares, que surgem como que encaixados no bloco principal, correspondendo aos subprogramas do programa principal.

Page 13: Linguagens de Programação Pedro Lopes MÓDULO 4- Subprogramas (Procedimentos e Funções) 2010/2011

13

Blocos de um Programa (cont.)

Quando se declara um subprograma (procedimento ou função), ele assume a forma de um bloco com as suas próprias:

Partes declarativas – onde se declaram os dados de uso local;

Partes operativas – onde se descrevem as operações específicas do subprograma.

Page 14: Linguagens de Programação Pedro Lopes MÓDULO 4- Subprogramas (Procedimentos e Funções) 2010/2011

14

Parte Declarativa e Parte Operativa

Parte Declarativa

Parte

Operativa

Page 15: Linguagens de Programação Pedro Lopes MÓDULO 4- Subprogramas (Procedimentos e Funções) 2010/2011

15

Variáveis Globais

Quando uma variável é declarada na parte declarativa do programa principal, diz-se que é uma variável global ou que é de âmbito global.

Quer isto dizer que pode ser usada em todo o programa, não só na parte operativa do programa principal, mas também dentro de qualquer subprograma.

Page 16: Linguagens de Programação Pedro Lopes MÓDULO 4- Subprogramas (Procedimentos e Funções) 2010/2011

16

Variáveis Locais

Quando uma variável é declarada na parte declarativa de um subprograma, então diz-se que se trata de uma variável local ou que tem um âmbito local.

Implica que essa variável só pode ser utilizada dentro desse subprograma em que foi declarada.

Page 17: Linguagens de Programação Pedro Lopes MÓDULO 4- Subprogramas (Procedimentos e Funções) 2010/2011

17

Resumo da Aula

Page 18: Linguagens de Programação Pedro Lopes MÓDULO 4- Subprogramas (Procedimentos e Funções) 2010/2011

18

Aula Seguinte

Funções e procedimentos;

Diferenças entre funções e procedimentos;

Funções e tipos de dados;

Realização e Correcção de uma Ficha de Trabalho.