1. TÉCNICO DE GESTÃO E
PROGRAMAÇÃO DE
SISTEMAS INFORMÁTICOS
Programa de Programação e Sistemas de Informação
Professor:João Barros
1
Professor:
João
Barros
3. Módulo 3 - Duração de Referência: 36 horas – 44
TEMPOS
1. Apresentação
Este módulo destina-se a dar aos alunos uma visão global da estruturação de programas.
Pretende-se que os alunos compreendam que a utilização de subprogramas permite a aplicação
dos princípios da programação estruturada assim como a reutilização de código escrito.
Neste módulo os alunos devem conhecer as regras de declaração e utilização de subprogramas
assim como controlar o ciclo de vida das variáveis.
Os alunos devem tomar consciência da independência dos subprogramas relativamente aos
programas através do uso da parametrização.
Estes conceitos visam encaminhar os alunos para soluções mais eficientes e racionais e
promover a divisão de problemas em componentes simples como meio de solução de problemas
complexos.
Professor:João Barros
3
Professor:
João
Barros
4. 2. Objectivos de Aprendizagem
No final deste módulo os alunos devem ter adquirido
conhecimentos, procedimentos e atitudes que
lhes permitam:
Adquirir a noção de subprograma;
Conhecer as regras de declaração de subprogramas;
Conhecer as regras de execução de subprogramas;
Utilizar corretamente parâmetros;
Distinguir os diferentes tipos de subprogramas;
Elaborar programas com recurso a subprogramas;
Conhecer as regras para a criação de bibliotecas de subprogramas;
Conhecer os mecanismos de utilização de bibliotecas de
subprogramas;
Professor:João Barros
4
Professor:
João
Barros
5. 3. Âmbito dos Conteúdos
1. Conceitos Básicos
2. Variáveis
2.1. Globais e Locais
2.2. Passagem por Parâmetros
3. Subprogramas
3.1. Estrutura do Subprograma
3.1.1. Procedimentos
3.1.2. Funções
3.2. Recursividade
4. Construção de Bibliotecas
Professor:João Barros
5
Professor:
João
Barros
6. 4. Bibliografia / Outros Recursos
CARDOSO, Vasco, Fundamental do Turbo Pascal 6 & 7. Lisboa : FCA, 1997.
GUERREIRO, Pedro João Valente Dias, Pascal - Técnicas de Programação. Lisboa:
Lidel, 2000.
GUERREIRO, Pedro João Valente Dias, Elementos de Programação com C. Lisboa:
FCA , 2001.
MARQUES DE SÁ, Joaquim P., Fundamentos de Programação Usando C. Lisboa:
FCA, 2004.
MENDES, António José, Fundamentos de Programação em Java 2. Lisboa: FCA,
2002.
SAMPAIO, Isabel, Fundamental da Programação em C. Lisboa: Lidel, 1999.
Computador, Plataforma Moodle do Docente, Vídeos do Docente
Internet
Retroprojector / Projector Multimédia
Manuais Escolares
Professor:João Barros
6
Professor:
João
Barros
7. 1. Conceitos Básicos
Professor:João Barros
7
Uma técnica aconselhada em programação e a divisão do problema inicial
em subproblemas mais simples ou, por outras palavras, dividir o programa
que permite a resolução computacional do problema em subprogramas;
Um subprograma constitui um bloco independente dentro de um programa,
podendo ser visto como um programa dentro de outro programa;
Tal como um programa necessita de comunicar com o ambiente exterior,
através da leitura de dados e da apresentação de resultados, também um
subprograma deve ter capacidade de aceitar valores e de, eventualmente,
devolver resultados ao ambiente em que se insere, ou seja, o programa ou
subprograma que controla a sua execução.
Professor:
João
Barros
8. 2. VARIÁVEIS
Professor: João Barros
8
• O Conceito de Bloco
O conceito de bloco é usado para delimitar áreas de escopo(nível de
abrangência) de variáveis.
Professor:
João
Barros
9. 2. VARIÁVEIS
Professor:João Barros
9
• Variáveis Locais
As variáveis declaradas em um bloco só existem efetivamente no seu
interior, estas variáveis são chamadas de variáveis locais. Quando um
bloco começa a ser executado, as variáveis declaradas no seu interior,
são "ativadas" e permanecem assim até o término da execução do
bloco, isto é, elas só ocupam espaço na memória durante a execução
do mesmo. Com isso, teremos uma otimização na utilização da
memória.
Professor:
João
Barros
10. 2. VARIÁVEIS
Professor:João Barros
10
• Escopo de Variáveis
• Dados dois blocos A e B, dizemos que A é externo a B se A
contém B. Neste sentido, uma variável declarada em um bloco é
global para todos os blocos internos e local para o próprio
bloco.
A
B
C
E
D
Professor:
João
Barros
11. 2. VARIÁVEIS
Professor:João Barros
11
• Escopo de Variáveis
• As variáveis declaradas no bloco A são globais para os blocos B, C, D
e E e locais para o bloco A.
• Uma variável declarada no bloco A é reconhecida em seu interior e em
qualquer bloco contido em A.
• As declarações feitas no bloco B, são válidas (existem) para todos os
blocos que estão no interior de B. Isto é, as declarações feitas em B
são locais ao bloco B e globais ao bloco C.
• As declarações feitas no bloco C, são locais ao bloco C. Isto é, só
existem durante a execução do bloco C.
A
B
C
E
D
Professor:
João
Barros
12. 2. VARIÁVEIS
Professor:João Barros
12
• Escopo de Variáveis
• Resumindo
• Diz-se que um bloco é externo ao outro, quando o segundo faz
parte do primeiro.
• Neste sentido uma variável declarada em um bloco é global para
todos os blocos internos e local para o próprio bloco.
Professor:
João
Barros
13. 2. VARIÁVEIS
Professor:João Barros
13
• Variáveis locais e globais
• São variáveis declaradas dentro do corpo de cada função;
• Só têm validade dentro da função em que são declaradas;
• As variáveis declaradas dentro da função Main() só existem dentro desta.
• No C# não existe o conceito de variável “global" pois o programa e
composto por um conjunto de classes;
• O mais próximo que temos de uma variável global é a declaração de uma
variável (atributo) logo a seguir à declaração da classe, antes da declaração
de qualquer função.
• Quando uma função tem uma variável local com o mesmo nome de uma
variável “global" a função da preferência à variável local;
Professor:
João
Barros
14. 2. VARIÁVEIS
Professor:João Barros
14
• Variaveis locais e globais
• Globais
• São todas as variáveis que são definidas no exterior de uma função(na raíz)
do nosso código) e têm um alcance global.
• Locais
• São todas as variáveis que são definidas no interior de uma função
• Resumindo
• Nem todas as variáveis são acessíveis a partir de todos os locais do código
Professor:
João
Barros
15. 2. VARIÁVEIS
Professor:João Barros
15
• Variaveis locais e globais
• Exemplificando
• Cria um projeto de nome “Var_Local_Global”
• Insere o seguinte código:
Professor:
João
Barros
16. 2. VARIÁVEIS
Professor:João Barros
16 • Variaveis locais e globais
namespace Var_Global_Local
{
class Program
{
static string acesso = "Global";
static void MudarAcesso()
{
string acesso = "Local";
//$ interpolação da string, para concatenar
Console.WriteLine($"Acesso no interior da função: {acesso}");
}
static void Main(string[] args)
{
MudarAcesso();
Console.WriteLine($"Acesso no exterior da função: {acesso}");
}
}
}
Professor:
João
Barros