25
12º ano

Algoritmos e PseudocódigoÉ a descrição, de forma lógica, dos passos a serem executados no cumprimento de uma determinada tarefa. É a forma pela qual descrevemos soluções de

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Algoritmos e PseudocódigoÉ a descrição, de forma lógica, dos passos a serem executados no cumprimento de uma determinada tarefa. É a forma pela qual descrevemos soluções de

12º ano

Page 2: Algoritmos e PseudocódigoÉ a descrição, de forma lógica, dos passos a serem executados no cumprimento de uma determinada tarefa. É a forma pela qual descrevemos soluções de

1.1.2 Noção de Algoritmo

2

Page 3: Algoritmos e PseudocódigoÉ a descrição, de forma lógica, dos passos a serem executados no cumprimento de uma determinada tarefa. É a forma pela qual descrevemos soluções de

❑É a descrição, de forma lógica, dos passos a serem executados no

cumprimento de uma determinada tarefa.

❑É a forma pela qual descrevemos soluções de problemas do nosso

mundo, afim de serem implementadas utilizando os recursos do

mundo computacional.

Como este possuí rigorosas limitações em relação à realidade, exige que

sejam impostas algumas regras básicas na forma de solucionar os

problemas para que possamos utilizar os recursos de hardware e

software disponíveis.

3

Page 4: Algoritmos e PseudocódigoÉ a descrição, de forma lógica, dos passos a serem executados no cumprimento de uma determinada tarefa. É a forma pela qual descrevemos soluções de

Definição Formal

Descrição de forma ordenada, com clareza e rigor, das operações

que se pretende realizar num computador para resolver um

problema ou atingir determinados objectivos.

Exemplo:

Sequência de instruções para ordenar uma lista de números inteiros.

A receita para preparar um bolo.

4

Page 5: Algoritmos e PseudocódigoÉ a descrição, de forma lógica, dos passos a serem executados no cumprimento de uma determinada tarefa. É a forma pela qual descrevemos soluções de

Trocar Pneu do Carro

Inicio

▪ Retirar o pneu suplente

▪ Trocar pneu furado pelo suplente

▪ Guardar pneu furado na mala ou suporte

Fim

5

Trocar Pneu do Carro

Início

▪ Verificar qual o pneu furado

▪ Retirar o macaco, o pneu sulplente e as ferramentas da mala

▪ Desapertar ligeiramente os pernos

▪ Levantar o carro com o macaco

▪ Desapertar completamente os pernos

▪ Retirar o pneu furado

▪ Colocar o pneu suplente

▪ Apertar os pernos

▪ Descer o carro com o macaco

▪ Apertar completamente os pernos

▪ Guardar o pneu furado na mala/suporte

▪ Guardar o macaco e chave de rodas

Fim

Page 6: Algoritmos e PseudocódigoÉ a descrição, de forma lógica, dos passos a serem executados no cumprimento de uma determinada tarefa. É a forma pela qual descrevemos soluções de

❑ Efectividade: todas as operações devem ser bastante básicas de forma a

serem executadas com precisão num tempo finito através do papel.

❑ Finito: um algoritmo deve sempre terminar após um número finito de

passos.

❑ Definição: cada passo de um algoritmo deve ser definido de uma forma

exacta.

❑ Entradas: um algoritmo deve ter uma ou mais entradas, ou seja, para o

algoritmo correr deve ser inicializado.

❑ Saídas: um algoritmo deve devolver sempre um resultado.

6

Page 7: Algoritmos e PseudocódigoÉ a descrição, de forma lógica, dos passos a serem executados no cumprimento de uma determinada tarefa. É a forma pela qual descrevemos soluções de

Um algoritmo pode ser representado de 2 formas:

❑ fluxogramas

❑ pseudocódigo

Fluxogramas - diagramas que representam o fluxo das ações de um

determinado programa através de símbolos.

Pseudocódigo - código de escrita em que se utilizam termos

convencionais para indicar as instruções do programa. Também se

chama português estruturado. É constituído por palavras da linguagem

natural e pela sintaxe das linguagens de programação.

7

Page 8: Algoritmos e PseudocódigoÉ a descrição, de forma lógica, dos passos a serem executados no cumprimento de uma determinada tarefa. É a forma pela qual descrevemos soluções de

Vantagens:

❑Auxilia a compreensão e facilita o

trabalho de programação.

❑Ajuda a visualizar as estruturas

típicas de programação, como é o caso

das estruturas de decisão/repetição.

Desvantagens:

❑Exige muito espaço, para além do

tamanho habitual de uma folha de

papel, o que torna a sua leitura e

manuseamento difícil.

Page 9: Algoritmos e PseudocódigoÉ a descrição, de forma lógica, dos passos a serem executados no cumprimento de uma determinada tarefa. É a forma pela qual descrevemos soluções de

Símbolos Significado Exemplos

Início/Fim

Processamento (Instruções)

x→x+1

Leitura/Escrita de dados

(Input/Output)

Linha de fluxo

Condição (Decisão/Repetição)

Sub - programa

Escreve x

X>5F

V

Rotina x

Início

Page 10: Algoritmos e PseudocódigoÉ a descrição, de forma lógica, dos passos a serem executados no cumprimento de uma determinada tarefa. É a forma pela qual descrevemos soluções de

Exemplo:

Início

Escrever (“Introduza dois valores”)

Ler (valor 1)

Ler (valor 2)

Se valor 1> valor 2 então

Escrever (valor 1, “é maior”)

Senão

Se valor 1<valor 2 então

Escrever (valor 2, “é maior”)

Senão

Escrever (“valores iguais”)

Fim

Vantagens:

❑ é mais prático e vantajoso na

estruturação do raciocínio e dos

elementos.

❑ permite utilizar um texto escrito

como base de trabalho para a

escrita de um programa.

❑ aproxima-se mais da versão final

do programa.

Page 11: Algoritmos e PseudocódigoÉ a descrição, de forma lógica, dos passos a serem executados no cumprimento de uma determinada tarefa. É a forma pela qual descrevemos soluções de

Não existe uma notação standard dopseudocódigo.

Mas, apresenta alguns elementos presentes naslinguagens de programação estruturada:◦ Dados

◦ Tipos de dados

◦ Operadores

◦ Instruções básicas

◦ Estruturas de controlo

11

Page 12: Algoritmos e PseudocódigoÉ a descrição, de forma lógica, dos passos a serem executados no cumprimento de uma determinada tarefa. É a forma pela qual descrevemos soluções de

Variáveis

Constantes

12

Page 13: Algoritmos e PseudocódigoÉ a descrição, de forma lógica, dos passos a serem executados no cumprimento de uma determinada tarefa. É a forma pela qual descrevemos soluções de

Os algoritmos manipulam os dados que são fornecidos pelos

utilizadores e executam as operações necessárias até obter um

resultado.

Existem 3 tipos básicos de dados:

❑ Numéricos

❑ Lógicos

❑ Carateres / cadeias de carateres (strings)

❑ Estruturados (ex.: array)

13

Page 14: Algoritmos e PseudocódigoÉ a descrição, de forma lógica, dos passos a serem executados no cumprimento de uma determinada tarefa. É a forma pela qual descrevemos soluções de

NUMÉRICOS

❑ inteiros (inclui todos os números inteiros)

❑ reais (inclui todos os números reais)

14

Page 15: Algoritmos e PseudocódigoÉ a descrição, de forma lógica, dos passos a serem executados no cumprimento de uma determinada tarefa. É a forma pela qual descrevemos soluções de

LÓGICOS (ou Booleanos)

Este tipo de dados é aplicado durante o processo de tomada de decisões

que eventualmente é necessário fazer.

Os dados deste tipo somente podem assumir dois valores: verdadeiro

ou falso. As decisões são tomadas, durante o processamento de um

algoritmo, baseadas nestes dois valores.

Por exemplo:

❑ Se raiz >= 0

imprima "Existe raiz"

caso contrário

imprima "Não existe raiz real."

15

Page 16: Algoritmos e PseudocódigoÉ a descrição, de forma lógica, dos passos a serem executados no cumprimento de uma determinada tarefa. É a forma pela qual descrevemos soluções de

CARATERES / CADEIAS DE CARATERES

Servem para tratamento de textos e normalmente são compostos por

uma sequência de caracteres contendo letras, algarismos e caracteres

de pontuação.

Nos algoritmos são normalmente representados por uma sequência de

caracteres entre aspas, por exemplo:

❑ "Linguagem de programação"

❑ "Qual é o seu nome?"

❑ "12345"

16

Page 17: Algoritmos e PseudocódigoÉ a descrição, de forma lógica, dos passos a serem executados no cumprimento de uma determinada tarefa. É a forma pela qual descrevemos soluções de

Operadores Aritméticos

Operador Descrição

+ Soma

- Subtracção

* Multiplicação

/ Divisão

% Módulo (Resto da divisão inteira)

+ Operador Unário (sinal mais)

- Operador Unário (sinal menos)

Operadores Relacionais

Operador Descrição

= Igual

< Menor que

<= Menor ou igual

> Maior que

>= Maior ou igual

<> Diferente Operadores Lógicos

Operador Descrição

NOT Negação

AND E lógico

OR Ou lógico

Page 18: Algoritmos e PseudocódigoÉ a descrição, de forma lógica, dos passos a serem executados no cumprimento de uma determinada tarefa. É a forma pela qual descrevemos soluções de

a b a AND b a OR B NOT a

falso falso Falso Falso Verdadeiro

falso verdadeiro Falso Verdadeiro Verdadeiro

verdadeiro falso Falso Verdadeiro Falso

verdadeiro verdadeiro Verdadeiro Verdadeiro Falso

NOT → Inverte o valor

lógico

AND → Verdadeiro se

ambos os operandos são

verdadeiros

OR → Verdadeiro se um dos

operandos for verdadeiro

Page 19: Algoritmos e PseudocódigoÉ a descrição, de forma lógica, dos passos a serem executados no cumprimento de uma determinada tarefa. É a forma pela qual descrevemos soluções de

Operador Grau de Prioridade

(), []

+, - (sinais unários)

NOT, *,/, % AND

+(soma), - (subtração), OR

=, <>, <, <=, >, >=

Page 20: Algoritmos e PseudocódigoÉ a descrição, de forma lógica, dos passos a serem executados no cumprimento de uma determinada tarefa. É a forma pela qual descrevemos soluções de

20

Se vários operadores aparecem numa expressão, a ordem de execução das

operações será dada segundo os seguintes critérios:

❑ As instruções com parênteses são executadas em primeiro lugar. Quando

houver parênteses aninhados (parênteses dentro de parênteses) as expressões

dentro dos mais internos são avaliadas primeiro.

❑ Ordem de precedência existente entre os operadores.

❑ Caso haja empate na ordem de prioridade resolver a expressão da esquerda

para a direita.

Page 21: Algoritmos e PseudocódigoÉ a descrição, de forma lógica, dos passos a serem executados no cumprimento de uma determinada tarefa. É a forma pela qual descrevemos soluções de

Atribuição / expressões

De entrada

De saída

21

Page 22: Algoritmos e PseudocódigoÉ a descrição, de forma lógica, dos passos a serem executados no cumprimento de uma determinada tarefa. É a forma pela qual descrevemos soluções de

Para que se efetuem operações com os dados temos de os incluir em

instruções adequadas. Em qualquer linguagem de programação, para construir

uma parte de um programa, temos de escrever expressões.

Uma expressão é um conjunto de operandos, articulados entre si por

operadores. As expressões podem ser basicamente de dois tipos:

❑ Expressões Numéricas: apresentam como resultado um valor numérico que

pode ser um número inteiro ou real, dependendo dos operandos e operadores.

❑ Expressões Lógicas: o seu resultado pode somente assumir os valores

verdadeiro ou falso.

22

Page 23: Algoritmos e PseudocódigoÉ a descrição, de forma lógica, dos passos a serem executados no cumprimento de uma determinada tarefa. É a forma pela qual descrevemos soluções de

Servem para ler dados exteriores ao programa (input).

Exemplo: ler (numero)

23

Page 24: Algoritmos e PseudocódigoÉ a descrição, de forma lógica, dos passos a serem executados no cumprimento de uma determinada tarefa. É a forma pela qual descrevemos soluções de

Servem para escrever dados para o exterior (output).

Exemplo: escrever (numero)

24

Page 25: Algoritmos e PseudocódigoÉ a descrição, de forma lógica, dos passos a serem executados no cumprimento de uma determinada tarefa. É a forma pela qual descrevemos soluções de

Condicionais

Repetitivas

IRÃO SER ESTUDADAS EM PORMENOR MAIS À FRENTE

25