curso profissional programador de informÁtica 10º … · nesta fase as ações dos algoritmos...

81
Programação e Sistemas de Informação CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º ANO (2017/2018) 1 Prof. António Travassos

Upload: others

Post on 06-Jul-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Programação e Sistemas de Informação

CURSO PROFISSIONAL

PROGRAMADOR DE INFORMÁTICA

10º ANO (2017/2018)

1

Prof. António Travassos

Page 2: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Módulo 1ALGORITMOS

2

Page 3: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

AlgoritmosDesignação da UFCD:

Algoritmos

Código:

0804

Carga Horária:

25 horas

Pontos de crédito:

2,25

3

Page 4: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

ConteúdosLinguagem estruturada

◦ Estruturas lógicas

◦ Desenho das estruturas diagramáticas

◦ Sintaxe da linguagem

Construção de um algoritmo◦ Noções de ação e estado da ação

◦ Acções e a sua sintaxe

◦ Verbos

◦ Sintaxe

◦ Alinhamento das frases

4

Page 5: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

ConteúdosEstruturas lógicas básicas e o seu controlo

◦ Estrutura sequencial, alternativa e repetitiva

◦ Condições e regras de inicialização e alteração

◦ Estruturas diagramáticas como representação algorítmica

Tipos de dados em algoritmia◦ Constantes e Variáveis

Descrição da entrada e saída de dados◦ Elementos de linguagem

5

Page 6: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

ConteúdosTécnicas de construção de algoritmos

◦ Contadores

◦ Totalizadores

◦ Expressões aritméticas

◦ Funções predefinidas

◦ Validação de dados

Construção de procedimentos◦ Procedimentos de entrada e saída e chamada de procedimentos

6

Page 7: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

ObjetivoEsclarecer conceitos básicos necessários à atividade de programar, que consiste na elaboração de programas de computador.

Promoção do raciocínio lógico e preparação para a resolução de problemas de programação mais ou menos complexos.

7

Page 8: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Noções básicas de programação

O que é um Programa?

É um conjunto de instruções organizadas de uma forma lógica e previamente estabelecida destinadas a serem processadas num sistema informático para realizar determinada tarefa.

8

Page 9: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Atenção:Antes de se começar a escrever um programa numa determinada linguagem de programação, há algumas ações a ter em conta;

Após a escrita desse programa, a atividade do programador não termina, pois são necessárias outras tarefas.

9

Page 10: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Fases/etapas de criação de um programa

1ª - Definição do problema;

2ª - Planificação da resolução;

3ª - Codificação;

4ª - Teste e depuração;

5ª - Documentação;

6ª - Manutenção.

10

Page 11: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

1ª - Definição do problema

Tem de se definir/identificar muito bem o problema que se pretende resolver.

Não se pode passar à fase seguinte, sem ter um enunciado preciso de todos os aspetos da situação ou problema a resolver.

11

Page 12: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

2ª - Planificação da resolução

Depois de se ter a noção exata da situação ou problema, devemos recorrer a uma estratégia para o abordar.

Diferentes estratégias de abordagem ao problema podem conduzir à solução.

É nesta fase que surgem os ALGORITMOS.

12

Page 13: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

3ª CodificaçãoDepois de definir o algoritmo adequado ao problema passa-se à codificação;◦ Nesta fase as ações dos algoritmos passam a instruções

da linguagem de programação que se vai utilizar.

Pode dizer-se que um programa consiste num algoritmo ou num conjunto de algoritmos interligados num todo.

13

Introdução à Programação e Algoritmia

Page 14: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

4ª Teste e Depuração

Após a obtenção do código do programa, há que testá-lo com diversos tipos de dados e em diferentes situações, de modo a poderem detetar-se eventuais erros, falhas ou omissões.

14

Page 15: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

5ª - Documentação

Deve-se elaborar dois tipos de documentação;◦ Uma para os programadores e outra para os utilizadores.

Para os programadores a documentação é a explicação do código do programa e serve para possibilitar eventuais alterações ou melhoramentos do mesmo.

Para os utilizadores a documentação visa facilitar o modo de operar com o programa.

15

Page 16: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

6ª - ManutençãoEsta fase diz respeito a alterações que sejam necessárias ou a aperfeiçoamentos que se revelem úteis.

Esta fase ocupa uma grande parte do trabalho dos programadores.

16

Introdução à Programação e Algoritmia

Page 17: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

AlgoritmosConjunto finito de regras/instruções bem determinadas para a resolução de um problema, através de um número finito de operações.

Isto é:

Um algoritmo é uma sequência finita e logicamente ordenada de ações para se chegar à solução de um problema.

17

Page 18: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Algoritmos

Um mesmo algoritmo pode servir de base à codificação de um programa em diversas linguagens de programação ou com diferentes técnicas de implementação.

18

Page 19: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Características de um AlgoritmoUm algoritmo deve ser rigoroso. A definição das ações tem de ser clara e precisa, sem ambiguidades, isto quer dizer que um algoritmo não pode estar sujeito a diferentes interpretações.

Um algoritmo deve ser eficaz. Deve resolver o problema, independentemente da situação, de uma forma isenta de erros e de qualquer falha.

19

Page 20: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Características de um AlgoritmoUm algoritmo deve ser eficiente. Deve ter capacidade de resolver o problema com o mínimo de recursos.

Um algoritmo deve terminar. O algoritmo deve levar a uma situação em que o objetivo tenha sido atingido e não existam mais instruções para ser executadas.

20

Page 21: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Exemplos de algoritmosA substituição de uma lâmpada fundida por uma em bom estado;

A substituição de um pneu de um automóvel;

A utilização de um eletrodoméstico para uma finalidade especifica;

Uma receita culinária;

A resolução de um problema de matemática.

21

Page 22: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Exemplos de algoritmosExemplo do algoritmo para substituição de uma lâmpada fundida

O algoritmo enuncia a sequência das operações:

1 – Preparar uma lâmpada nova

2 – Retirar a lâmpada fundida

3 – Colocar a lâmpada nova

Temos uma sequência ordenada de forma linear em três passos.

22

Page 23: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Mas, entretanto podemos acrescentar outras ações:

4 – Ligar o interruptor para verificar se a nova lâmpada acende ou não.

5 – Se a lâmpada acender, podemos dar o processo por concluído, mas se não acender teremos de repetir os passos de 1 a 4.

Com estas ações a sequência já não se mantém numa simples ordem linear.

Pois a uma determinada altura surge uma condição associada à palavra “SE”

23

Exemplos de algoritmos

Page 24: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Essa condição tem 2 ramificações distintas:

- se a condição se verificar (se a lâmpada acende), processo concluído.

- se a condição não se verificar (se a lâmpada não acender), teremos de repetir os passos anteriores.

Estas SITUAÇÕES CONDICIONAIS são um elemento comum nos algoritmos e nos programas.

24

Exemplos de algoritmos

Page 25: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Mas ainda podemos acrescentar outras ações e assim o algoritmo fica mais completo

Podemos ainda adicionar as ações ir buscar um escadote para mudar a lâmpada, assim fica:

1 – Preparar a lâmpada nova;

2 – Colocar o escadote debaixo do candeeiro;

3 – Retirar a lâmpada fundida;

4 – Colocar a lâmpada nova;

25

Exemplos de algoritmos

Page 26: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

5 – Descer o escadote;

6 – Ligar o interruptor para verificar se a nova lâmpada acende ou não;

7 – Se a lâmpada acender, podemos dar o processo por concluído;

8 – Arruma-se o escadote;

9 - Se a lâmpada não acender teremos de repetir os passos de 1 a 6.

Assim teremos o algoritmo mais completo.

26

Exemplos de algoritmos

Page 27: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Regras para a construção de um algoritmo

Usar somente um verbo por frase;

Imaginar que se está a desenvolver um algoritmo para pessoas que não trabalham com informática;

Usar frases curtas e simples;

Ser objetivo;

Procurar usar palavras que não tenham sentido duvidoso.

27

Page 28: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Exercícios1. Elabore um algoritmo para substituição de um pneu de

um automóvel

2. Dados uma balança de pratos e um conjunto de maçãs, determinar qual a maça mais pesada.

28

Page 29: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Resolução:Substituição de um pneu de um automóvel

1. Abrir o carro

2. Retirar o pneu suplente

3. Colocar o macaco na posição adequada

4. Levantar o carro

5. Retirar os parafusos do pneu

6. Retirar o pneu furado

7. Colocar o novo pneu

8. Retirar o macaco do carro

9. Arrumar o macaco

29

Page 30: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Resolução:Conjunto de maçãs

1. Colocar duas maçãs na balança (uma em cada prato)

2. Determinar qual é a maçã mais leve

3. Retirar essa maçã da balança

4. Se houver mais maçãs, colocar outra no prato vazio

5. Repetir os passos 2 a 4 enquanto houver maçãs que ainda não foram pesadas

30

Page 31: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Metodologia Top-downEsta metodologia parte do topo para a base, isto é, o problema é abordado como um todo que se vai decompondo em blocos.

Esta metodologia procura identificar os pontos essenciais da questão e parte dos ponto mais gerais para os mais particulares, até ao nível do pormenor desejado.

31

Page 32: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Exemplo:

Elaborar um programa para gerir os livros de uma biblioteca.

Antes de começarmos a elaborar o algoritmo, segundo esta metodologia teremos de identificar as tarefas gerais que pretendemos realizar com o nosso programa e só passaremos aos detalhes numa fase posterior.

32

Page 33: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Operações principais:

1 – Registar os livros num ficheiro

2 – Consultar os dados dos livros

3 – Registar os empréstimos e as devoluções

Depois de identificadas as operações gerais do programa, poderíamos formular uma interface com um menu apresentando as opções do programa, permitindo escolher a opção desejada.

33

Page 34: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

De seguida, podemos tratar cada opção como um subprograma ou um subalgoritmo.

Por exemplo, a opção:

1 - Registar os livros num ficheiro

Pode-se subdividir em tarefas mais especificas, como:◦ Criar um formulário para a introdução dos dados relativos a cada

livro (nome do autor, título da obra, etc);

◦ Criar um ficheiro adequado a operar com estes registos.

Isto teria de se fazer para todas as opções até termos todos os detalhes necessários ao programa.

34

Page 35: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Operações elementares de um sistema informático

Um sistema informático é constituído por blocos ou unidades funcionais, tais como:

◦ Dispositivos de input ou entrada de dados.

◦ Unidade central de processamento ( a que podemos associar a memória primária).

◦ Dispositivos de output ou saída de dados.

35

Page 36: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Operações elementares de um sistema informático

Assim sendo, podemos considerar que as operações básicas e fundamentais de um sistema informático são:

◦ Operações de input – ou entrada de dados;

◦ Operações de processamento interno;

◦ Operações de output ou saída de dados.

• Para a elaboração de um algoritmo devemos convencionar determinadas palavras para as referidas operações elementares.

36

Page 37: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Operações elementares de um sistema informático• Exemplo:

• Para as operações de entrada ou input de dados utilizamos as palavras LER ou OBTER

• Para as operações de saída ou output de dados, utilizamos ESCREVER ou APRESENTAR

• Nas operações de processamento, não interessa o que o processador faz (a nível de linguagem máquina), mas as operações que pretendemos realizar.

• Essas operações serão essencialmente operações de cálculos aritméticos e lógicos

37

Page 38: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Exemplo: Calcular a média final do aluno

Os alunos realizaram 3 provas: P1, P2 e P3.

Onde: Média Final = (P1+P2+P3)/3

Para elaborar o algoritmo proposto, faremos três perguntas:

a) Quais são os dados de entrada?

R: Os dados de entrada são P1, P2 e P3

b) Qual será o processamento a ser utilizado?

R: O procedimento será somar todos os dados de entrada e dividi-los por 3: (P1+P2+P3)/3

c) Quais serão os dados de saída?

R: O dado de saída será a média final

38

Page 39: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Operações elementares de um sistema informático

O algoritmo para calcular média do aluno seria:

1. Obter a nota da prova1.

2. Obter a nota de prova2.

3. Obter a nota de prova3.

4. Somar todas as notas e dividir o resultado

por 3.

5. Apresentar o resultado da divisão, ou seja, o valor da média.

39

Page 40: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Exercício1. Elabore um algoritmo que visa calcular a área de um retângulo a

partir das medidas dadas em relação ao comprimento e à largura desse mesmo retângulo.

40

Page 41: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

O algoritmo para calcular a área do rectângulo seria:

1. Obter valor do comprimento

2. Obter valor da largura

3. Calcular área: comprimento x largura

4. Apresentar o valor da área

41

Introdução à Programação e Algoritmia

Page 42: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Operadores aritméticos

OPERADOR OPERAÇÃO

+ Adição

- Subtracção

* Multiplicação

/ Divisão

^ Exponenciação

42

Page 43: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Operadores relacionais ou de comparação

Operador Significado

= Igualdade

< Menor

> Maior

<= Menor ou igual

>= Maior ou igual

<> Diferente de

43

Page 44: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Operadores lógicos

Operador Significado

Not (não) Negação

And (e) Conjunção

Or (ou) Disjunção

44

Page 45: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Tabelas de Verdade

AND

P Q P Q

V V V

V F F

F V F

F F F

45

E

Page 46: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Tabelas de verdadeNegação:

46

Not

p ~p

V F

F V

Page 47: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Tabelas de verdadeOU

47

OR

P Q P Q

V V V

V F V

F V V

F F F

Page 48: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Ordem de prioridade dos operadores(usados na linguagem Pascal)

48

Page 49: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Calculo de expressõesa) 10 + 5 > 10 AND 10 < 10 – 5

15 > 10 AND 10 < 5

V AND F

F

b) R = 3; Y=2

R * Y / 2

3 * 2 / 2

6 / 2

3

49

Page 50: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Exercícios com expressões lógicas1 - Considerando que P=3 e Q=2, determine o valor das expressões:

a) P + Q * 5

b) (P + Q ) * 5

c) P + 5 * Q / 2

d) (P + 5 * Q) / 2

50

Page 51: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

2 – Determine os valores lógicos de cada expressão, sabendo que X=10 e Y=5 (apresente todos os cálculos).

a) X > 5 and X >= 10

b) X > 0 or X > 20

c) X = 10 and Y<>5

d) Not (Y=5) or X <> 10

e) X >= 10 and y < 5

f) Not (X > 10) and (Y<5)

g) Not (X>10) or (Y<5)

h) X >=5 and x <10 or y>=0 and y <=5

51

Page 52: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Tipos de dadosOs principais tipos de dados utilizados em algoritmia e programação são:

◦ Caracteres, cadeias de caracteres ou texto;

◦ Números (podendo este ser de diferentes tipos, inteiros (negativos, zero e positivos), reais (com casas decimais));

◦ Dados do tipo lógico ou booleano, este têm apenas 2 resultados possíveis verdadeiro (true) ou falso (false)

52

Page 53: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Tipos de dados

53

Page 54: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Funções Pré definidas

54

Introdução à Programação e Algoritmia

Page 55: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Constantes e VariáveisEm algoritmos e em programas, os dados podem surgir sob a forma de constantes ou de variáveis.

◦ Constante - é um dado que permanece inalterável do início ao fim do algoritmo.

◦ Variável - é um dado que pode sofrer alterações durante o algoritmo.

55

Page 56: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Constantes e Variáveis

56

As constantes podem surgir:◦ Sob a forma directa, ou seja, valores numéricos ou

alfanuméricos, por exemplo: 0,75; “Junho”.

◦ Sob a forma de identificadores, ou seja, nomes que representam ou identificam determinados dados, por exemplo:

Page 57: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Constantes e VariáveisIdentificador – é um nome que é associado (pelo programador) a uma constante, a uma variável ou a outro tipo de elemento.

As variáveis surgem sempre designadas através de identificadores, ou seja, os nomes que as identificam.

Cada variável surge associada a um determinado tipo de dados (inteiro, real, string, etc.)

57

Variável Idade : inteiro

Page 58: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Constantes e Variáveis

Instruções de atribuição – são as operações internas de um algoritmo ou programa que atribuem valores às variáveis◦ Nos algoritmos o símbolo que se utiliza na operação de

atribuição é

58

Nome ”Maria João” Custo 15

Page 59: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Pseudocódigo e FluxogramasPseudocódigo – Representa o código de um programa numa linguagem formal, com termos convencionais que representam as acções a executar pelo programa.

Fluxogramas – É outra forma de representar os algoritmos, recorrendo a símbolos convencionais, que representam as sequências de acções dos algoritmos.

59

Introdução à Programação e Algoritmia

Page 60: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Pseudocódigo

Vantagens:◦ Como é baseado na linguagem corrente, é fácil de elaborar;

◦ Pode atingir vários níveis de complexidade, conforme o detalhe com que se escrever;

◦ Permite acompanhar o tratamento dos dados facilitando o teste do programa;

◦ Permite implementar as estruturas elementares da programação estruturada;

◦ Serve de base à própria documentação

60

Page 61: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Pseudocódigo

Desvantagens:◦ Não possui regras padrão, pois depende do estilo de escrita de cada programador;

◦ Não permite uma rápida visualização de pormenores, pois usa a linguagem escrita, o que obriga à sua leitura integral;

◦ Para problemas mais complicados a linguagem torna-se muito complexa e de difícil compreensão.

61

Introdução à Programação e Algoritmia

Page 62: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

FluxogramasVantagens:

◦ Como são baseados numa representação gráfica, é mais fácil de visualizar;

◦ Os símbolos utilizados são normalizados e universais;

◦ Como cada símbolo tem um significado, isso simplifica a resolução do problema;

◦ São fáceis de testar e permitem uma rápida deteção e correção de erros de lógica.

62

Page 63: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Fluxogramas

Desvantagens:◦ São pouco práticos para efetuar alterações;

◦ Os dados tem de ser definidos à parte, porque os fluxogramas não permitem representar a estrutura dos dados;

◦ Se os programas forem muito grandes os fluxogramas tornam-se muito grandes e complexos.

63

Page 64: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Símbolos utilizados nos fluxogramas

Símbolo de inicio ou de fim

Estes são usados para representar o inicio ou o fim das operações de um algoritmo

64

Page 65: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Símbolos utilizados nos fluxogramasSímbolo de linha de fluxo

Estabelece a ligação entre as acções e indica o sentido da sequência delas

65

Page 66: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Símbolos utilizados nos fluxogramasSímbolo de entrada ou de saída de dados

Representa uma ação de entrada (input) ou de saída (output) de dados no sistema

66

Page 67: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Símbolos utilizados nos fluxogramasSímbolo de processamento interno

Representa uma operação de processamento interno, como, por exemplo, a atribuição de um valor a uma variável

67

Page 68: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Símbolos utilizados nos fluxogramasSímbolo de Comentário

………….

Este símbolo é usado para fazer comentários explicativos do algoritmo

68

Page 69: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Símbolo de conector

Usado para representar a ligação ou conexão entre diferentes fluxos de acções representadas num algoritmo

69

Símbolos utilizados nos fluxogramas

Page 70: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Símbolo de decisão

Representa uma condição ou expressão lógica de que dependerá uma decisão a seguir num sentido ou noutro

70

Símbolos utilizados nos fluxogramas

Page 71: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Símbolo de selecção múltipla

Representa uma situação em que o algoritmo pode seguir por diversas vias, opções ou sequência de acções

71

Símbolos utilizados nos fluxogramas

Page 72: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Símbolo de subalgoritmo

Representa um subalgoritmo, ou seja uma unidade mais pequena em que o algoritmo foi decomposto, por outras palavras é uma rotina, um procedimento ou um conjunto de instruções

72

Símbolos utilizados nos fluxogramas

Page 73: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Convenções do pseudocódigo

Aqui, não há regras generalizadas, mas existem palavras que representam as principais operações que os algoritmos poderão conter.

Exemplo:◦ LER – Entrada de dados

◦ Escrever – Saída de dados

◦ As strings estão sempre entre “ “ ou ‘ ‘

◦ As variáveis começam sempre por letras e não utilizam acentos, nem espaços

◦ O simbolo indica a operação de atribuição

73

Page 74: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

ExercícioCriar um algoritmo que calcule a área de um retângulo, em linguagem informal:

1 – Obter o valor do comprimento

2 – Obter o valor da largura

3 – Calcular a área: comprimento x largura

4 – Apresentar o valor da área.

Para fazermos o algoritmo correcto teremos de utilizar os operadores utilizados em algoritmia e em programação.

74

Page 75: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Problema:

Calcular a área de um rectângulo

◦ Dados de entrada (input) : comprimento e largura

◦ Dados de saída (output) : valor da área

75

Page 76: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Em pseudocódigoInicio

Ler (comprimento, largura)

area comprimento * largura

escrever (area)

Fim

76

Page 77: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

O fluxograma será:

77

Início

Ler (comp, larg)

Área comp * larg

Escrever (área)

Fim

Page 78: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Estruturas de decisão“se…então…senão” - “if…then…else”

Exemplo:

Verificar se a nota de um aluno é superior a 10, escrever o resultado aprovado ou reprovado segundo a avaliação.

Variável: nota

Processamento: verificar se é superior a 10

Escrita: “aprovado” ou “reprovado”

78

Page 79: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Estruturas de decisãoLinguagem formal

InicioLer(nota)

Se(nota>=10) então

escrever “Aprovado”

Senão

escrever “Reprovado”

Fim

79

Page 80: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

Estruturas de decisão

80

Inicio

Ler(nota)

Nota>10 Escrever(“aprovado”)

Fim

Escrever(“Reprovado”)

Sim

Não

Fluxograma

Page 81: CURSO PROFISSIONAL PROGRAMADOR DE INFORMÁTICA 10º … · Nesta fase as ações dos algoritmos passam a instruções da linguagem de programação que se vai utilizar. Pode dizer-se

ExercícioEscreva um algoritmo que compare dois números e escreva o maior deles.

a) Escreva o algoritmo em linguagem formal

b) Escreva o algoritmo em fluxograma.

81