Você está na página 1de 106

APLICAÇÕES

INFORMÁTICAS
B 12ºANO

ANO LETIVO 2023_2024


APLICAÇÕES
INFORMÁTICAS
B 12ºANO

ANO LETIVO 2023_2024


ALGORITMIA:
LINGUAGEM NATURAL VS LINGUAGEM FORMAL

LINGUAGEM
É uma forma de comunicação, que utiliza símbolos e determinadas
regras para os combinar.

• É a linguagem falada e escrita


• Passível de várias interpretações
• Não é projetada pelas pessoas
Linguagem natural
(Exemplo: português, inglês, outras)

• São previamente
desenvolvidas para
determinados fins
Linguagem formal • Evita ambiguidade e redundância
(Exemplo: linguagens de programação, matemática)
3
ALGORITMIA:
LINGUAGEM DE PROGRAMAÇÃO / MÁQUINA

 Linguagem de programação são conjuntos de


palavras formais, utilizadas na escrita de programas,
para enunciar a execução de operações num
computador

 Objetivos de uma linguagem de programação:


 Proporcionar os meios de expressão para uma solução
computacional de um dado problema

 Linguagem máquina – é a única linguagem que o


computador entende e tem por base sequências de
zeros (0) e uns (1) (sistema binário)
4
ALGORITMIA:
LINGUAGEM DE PROGRAMAÇÃO

 Linguagem de programação
 Sistema de escrita formal, constituído por um conjunto
de regras para a escrita de programas de computador
 Programa (código)
 Conjunto de instruções numa linguagem de
programação
 Instrução
 Especificação ao processador da ação a executar

5
ALGORITMIA:
LINGUAGENS DE ALTO-NÍVEL E BAIXO-NÍVEL

As linguagens de programação podem ser


classificadas como linguagens de alto nível,
de acordo com a proximidade que têm ou não
das linguagens humanas.

As linguagens de baixo nível são as


que se encontram orientadas para a
máquina (computador) enquanto as
linguagens de alto nível não refletem
a estrutura de nenhum computador.
6
ALGORITMIA:
LINGUAGENS DE ALTO-NÍVEL E BAIXO-NÍVEL
Nível Geração Descrição Exemplo
Linguagem
Linguagem diretamente executável pelo processador do
1ª máquina ou
computador. Usa apenas 0 e 1 binária

Baixo
Linguagem de baixo nível que utiliza uma notação simbólica
Linguagem
2ª compreensível pelo ser humano com uma correspondência Assembly
direta com o código de uma determinada máquina.

Fortran,ALGOL,
Primeiras linguagens de alto nível projetadas para serem BASIC, Visual

facilmente entendidas e escritas pelo ser humano basic, C, C++,
Pascal, Java.
MATLAB, SQL,
Alto 4ª Linguagens capazes de gerarem código por si só Clipper, DBase

Linguagens “inteligentes”, ainda pouco


5ª desenvolvidas, que tendem a uma maior LISP, Prolog
aproximação com a linguagem natural

7
INTERPRETADORES E COMPILADORES

 Para converter um programa escrito numa linguagem de


alto nível para código máquina, executável pelo
computador, torna-se também necessária a intervenção de
software de tradução ou um programa-tradutor, que
pode ser de dois tipos diferentes:

 Interpretador

 Compilador

APLICAÇÕES INFORMÁTICAS | 12ºANO 8


INTERPRETADORES E COMPILADORES

 Interpretador
 traduz instrução por instrução, à medida que o programa vai sendo lido e
executado, ficando assim o programa dependente do software que executa
essa interpretação. A vantagem do interpretador reside na correção dos
erros, uma vez que é feita em cada passo de execução.

 Compilador
 traduz na totalidade das instruções de alto nível para um programa em
código máquina, o qual poderá ser executado autónoma ou
independentemente do software que faz a compilação. Isto é, é criado um
executável (.EXE). A vantagem é que o programa é traduzido uma única vez,
e sempre que se quiser correr o programa não é necessário voltar a traduzi-
lo.
APLICAÇÕES INFORMÁTICAS | 12ºANO 9
INTERPRETADORES E COMPILADORES

Entradas
Programa Fonte Programa
Compilador
Objecto
Saídas

Entradas
Programa Fonte Interpretador
Saídas
 Programa fonte – é o programa original, escrito numa qualquer linguagem de
programação evoluída.
 Programa objecto – é o programa gerado após o programa fonte ter sido
compilado, por um compilador e escrito em linguagem máquina ou assembly

APLICAÇÕES INFORMÁTICAS | 12ºANO 10


ALGORITMIA:
NOÇÃO DE ALGORITMO

• O que se pretende resolver


Problema

• Sequência finita de instruções descritas de


forma lógica, ordenada, clara e precisa a
Algoritmo fim de resolver o problema

• Algoritmo codificado numa linguagem de


programação
Programa

11
PROBLEMA:
PROBLEMA
Apanhar o autocarro para ir
a um determinado local

APLICAÇÕES INFORMÁTICAS B 12
PROBLEMA - RESOLUÇÃO

Início
Saia de casa
vire à esquerda
atravesse a rua
apanhe o autocarro
desça do autocarro
Fim

13
 Se a pessoa seguir os passos,
certamente conseguirá chegar ao
local desejado. A sequência de
instruções acima, porém, não está
suficientemente detalhada, a ponto de
não dar margem a erros
 A execução da sequência acima
depende do bom senso de quem for
executá-la. Se por exemplo, quando a
PROBLEMA pessoa for executar a instrução
(CONTINUAÇÃO) atravesse a rua, estiver a passar um
carro, ela esperará o carro passar,
ainda que isto não esteja explicado
numa sequência
 Como o computador não tem essa
capacidade de tirar conclusões
próprias, ele poderá ter problemas
 Uma sequência mais detalhada
poderá ser a solução para o
problema

14
PROBLEMA - RESOLUÇÃO

Início
Saia de casa
vire à esquerda
enquanto estiver a passar um carro espere
atravesse a rua
apanhe o autocarro
desça do autocarro
Fim

15
EXERCÍCIOS

1) Algoritmo que permita selecionar uma lâmpada da mesma


potência da que está queimada e trocá-la
2) Algoritmo para trocar um pneu furado de um carro
3) Algoritmo com a sequência lógica de tomar banho

16
ALGORITMIA:
NOÇÃO DE ALGORITMO

 Uma linguagem de programação tem como


objetivo expressar um processo que, com o auxílio de
um computador, tende a resolver um problema.
 Para resolver o problema é preciso criar um programa
numa linguagem de programação escolhida.
 Para efetuar a passagem do problema para o programa,
convém elaborar um algoritmo que possibilite a
compreensão e a descrição do problema e que seja de
fácil conversão para qualquer linguagem de programação.

20
ALGORITMIA:
CONCEITO DE ALGORITMO

 Um algoritmo é uma sequência finita de


instruções descritas de forma lógica, ordenada,
clara e precisa a fim de resolver o problema

 Os algoritmos são ainda usados na fase inicial de


preparação de um programa

21
ALGORITMIA:
CONCEITO DE ALGORITMO

Um Algoritmo não é a solução de um problema, pois,


se assim fosse, cada problema teria um único
algoritmo. Algoritmo é um caminho para a solução
de um problema, e em geral, os caminhos que
levam a uma solução são muitos!

Algoritmos não se aprendem: Algoritmos só se aprendem:


• Copiando Algoritmos • Construindo Algoritmos
• Estudando Algoritmos • Testando Algoritmos

Aprender algoritmos não se consegue a não ser através de muitos


exercícios.
22
ALGORITMIA:
CARACTERÍSTICAS DE UM BOM ALGORITMO
 Estar correctamente definido

 As acções a desenvolver devem ser apresentadas de forma clara, abrangendo a


maior quantidade de informação.
 Estar isento de ambiguidades

 Não deve haver falta de informação ou duplicação desta.

 Ser eficaz

 Deve resolver o problema, em qualquer situação, sem erros ou falhas.

 Ser eficiente

 Deve ter capacidade de resolver o problema com o mínimo de recursos.

APLICAÇÕES INFORMÁTICAS | 12ºANO 23


ALGORITMIA:
NARRATIVA DESCRITIVA / FLUXOGRAMA /
PSEUDOCÓDIGO

 Um algoritmo pode ser escrito com auxilio de uma linguagem natural


(narrativa descritiva), utilizando expressões precisas. Mas existem
outros modos de especificação que são o fluxograma e o
pseudocódigo.

 Nos fluxogramas utiliza-se uma representação gráfica e no


pseudocódigo, uma representação textual (português estruturado).

APLICAÇÕES INFORMÁTICAS | 12ºANO 24


PARA CONSTRUIR
UM ALGORITMO, É
NECESSÁRIO:

APLICAÇÕES INFORMÁTICAS | 12ºANO 25


ALGORITMIA:
PSEUDOCÓDIGO
Estrutura Elemento

Variáveis
Dados
Constantes

Numéricos, lógicos, caracteres, cadeia de caracteres,


Tipos de dados
estruturados (array, record, set, file)

Operadores Aritméticos, relacionais, lógicos e cadeia de caracteres

Atribuição
Instruções básicas De entrada
De saída

Sequencial Decisão ou
Estruturas de controlo seleção
Repetição ou de ciclos
APLICAÇÕES INFORMÁTICAS | 12ºANO 26
ALGORITMIA:
FLUXOGRAMA – SÍMBOLOS GRÁFICOS

Símbolo

Início ou Entrada Processo/ Decisão/ Linha de


fim do ou saída Operação Comparação Conexão fluxo Subrotina
Descrição
algoritmo de dados

x>5 V x  y +1
Inicio Escrever (x) x  y +1
Exemplo F
Escrever (x)

APLICAÇÕES INFORMÁTICAS | 12ºANO 27


ALGORITMIA:
PSEUDOCÓDIGO

 Os Pseudocódigos utilizam uma representação textual (narrativa)


constituída por palavras da linguagem natural e pela sintaxe
característica das linguagens de programação estruturadas – LPE.

 Não existe uma notação standard do pseudocódigo, mas a próxima


tabela apresenta alguns elementos presentes numa LPE e que servem
de base também às notações do pseudocódigo.
APLICAÇÕES INFORMÁTICAS | 12ºANO 28
DADOS E TIPOS DE DADOS

 Dados
 Elementos sobre os quais serão efetuadas operações. São introduzidos através
do hardware, como, por exemplo, o teclado. De acordo com a sua natureza,
podem estar associados a diferentes tipos.
 Tipo de dados
 Está associado a um conjunto de valores, que definem o formato especifico dos
elementos desse tipo.
 Os dados utilizados em algoritmia ou programação podem ser de dois tipos:
simples ou estruturados.
 Simples: numéricos, booleanos, alfanuméricos;
 Estruturados: arrays, registos…

APLICAÇÕES INFORMÁTICAS | 12ºANO 31


TIPOS DE DADOS

Tipos de dados
inteiro
Numérico
real
Simples
Caracteres
Lógicos (booleanos)
Cadeias de caracteres (string)
Vectores (array)
Registo (record)
Estruturados
Conjunto (set)
Ficheiro (file)

APLICAÇÕES INFORMÁTICAS | 12ºANO 32


TIPOS DE DADOS

 Alfanuméricos
 conjuntos de caracteres que podem ter letras, números e outros caracteres. Estes dados têm,
obrigatoriamente, o sinal de aspas (“) no princípio e no fim.– possuem comprimento fixo ou
variável (máximo 32767 caracteres)
Ex: “Hoje é terça-feira”, “10º Ano”, “Aplicações Informáticas”
 Numéricos – inteiros ou reais
 Inteiros Ex: 2, -45, 0
 São valores numéricos, positivos ou negativos, sem a parte decimal (vírgula)
 Os números inteiros podem representar valores de notas do aluno, idades de pessoas, distâncias em
km, temperaturas, pontos de uma equipa, etc.
 Reais Ex: 2.48, -435.08, 0
 São valores numéricos, positivos ou negativos, com ponto decimal.
 Podem ser valores de média de notas do aluno, valor de pi, etc
 Lógicos
 Os dados lógicos têm apenas 2 valores possíveis: Verdadeiro ou Falso
APLICAÇÕES INFORMÁTICAS | 12ºANO 33
OPERADORES E EXPRESSÕES
 São elementos matemáticos que atuam sobre os operandos, numa determinada
expressão
 Aritméticos
 permitem a realização de operações matemáticas com valores do tipo numérico, cujo resultado
é ainda um valor do tipo numérico
 Relacionais
 são utilizados para comparar dois ou mais valores. O resultado é do tipo lógico (verdadeiro ou
falso)
 Lógicos
 realizam operações lógicas, devolvendo sempre um dos valores lógicos, true ou false
 Funcionais
 funções internas da linguagem
 Operadores de cadeias de caracteres

34
APLICAÇÕES INFORMÁTICAS | 12ºANO
OPERADORES ARITMÉTICOS

Operador Significado Exemplo Resultado

+ Adição a=5+3 a=8

- Subtração b=5-2 b=3

* Multiplicação c=5*2 c = 10

/ Divisão x=5/2 x = 2.5

DIV Divisão inteira y = 5 DIV 2 y=2

MOD Resto da divisão inteira z = 5 MOD 2 z=1

^ Exponenciação k=5^2 k = 25

APLICAÇÕES INFORMÁTICAS | 12ºANO 35


OPERADORES RELACIONAIS

Operador Relação Expressão

< Menor que A<B

> Maior que A>B

<= Menor ou igual A<=B

>= Maior ou igual A>=B

<> Diferente A<>B

= Igual A=B

APLICAÇÕES INFORMÁTICAS | 12ºANO 36


OPERADORES LÓGICOS

Operador Significado
NOT Negação
AND Conjunção (E)
OR Disjunção (OU inclusivo)

Tabela de verdade:

A B AEB A OU B ~A
V V V V F
V F F V F
F V F V V
F F F F V
37
APLICAÇÕES INFORMÁTICAS | 12ºANO
OPERADORES FUNCIONAIS

 Chamam uma função predeterminada para que ela se execute sobre um dado
operando produzindo um resultado.

Operadores funcionais
SQR() Quadrado
SQRT() Raiz quadrada
SIN() Seno
ABS() Valor Absoluto
APLICAÇÕES INFORMÁTICAS | 12ºANO 38
OPERADORES DE CONCATENAÇÃO

 Concatenação

 Consiste em ligar uma ou mais cadeias de caracteres transformando-


as numa só.

 Ex: ‘Ma’ + ‘ria’ = ‘Maria’

 Ex: ‘In’ + ‘formá’ + ‘ti’ + ‘ca’ = ‘Informática’

APLICAÇÕES INFORMÁTICAS | 12ºANO 39


TIPOS DE DADOS

 O resultado de uma expressão é sempre dependente do


tipo de dados dos operadores. Assim uma expressão:

 Aritmética, tem como resultado um valor numérico;

 Lógica, tem como resultado um valor lógico;

 Relacional, tem como resultado um valor lógico.

APLICAÇÕES INFORMÁTICAS | 12ºANO 40


CONSTANTE E VARIÁVEL

 Os dados num programa podem ser utilizados sob a forma


de constantes ou variáveis
 Constantes
 são identificadores para designar valores que permanecem inalterados na
execução do programa.
 Variáveis
 são identificadores para designar valores que podem assumir diferentes
valores ao longo da execução do programa.

APLICAÇÕES INFORMÁTICAS | 12ºANO 41


EXEMPLO | VARIÁVEIS

Variável Dado
Nome Bernardo
Nome Gonçalo
Idade 17
Idade 16

 Bernardo e Gonçalo constituem um pequeno grupo de dados cuja variável é


nome.
 Do mesmo modo, 17 e 16 constituem um outro grupo de dados cuja variável
é a idade.

APLICAÇÕES INFORMÁTICAS | 12ºANO 42


REGRAS PARA ATRIBUIR UM NOME ÀS VARIÁVEIS

 Deve indicar a realidade que representa


 O primeiro caracter deve ser sempre uma letra;
 Pode ser constituído por um ou mais caracteres;
 Não deve possuir espaços em branco, nem acentos;
 Não deve possuir os caracteres especiais
 ()* $%#@!+-=/?<>

 Não deve ser o nome de uma palavra reservada da linguagem de


programação escolhida (ex em C: printf, int)

APLICAÇÕES INFORMÁTICAS | 12ºANO 43


PRIORIDADES DOS OPERADORES

 Os operadores possuem uma prioridade uns relativamente


aos outros, isto é, existe uma hierarquia de operadores o
que implica que as operações sejam realizadas segundo uma
determinada ordem, a não ser que essa ordem seja alterada
utilizando parêntesis.

APLICAÇÕES INFORMÁTICAS | 12ºANO 44


PRIORIDADE DOS OPERADORES

 A utilização de parêntesis, mesmo que não sejam estritamente

necessários pode e deve ser aplicada com o intuito de aumentar a


clareza nas expressões tratadas e diminuir o erro.

 As operações sucessivas dentro de um grupo efectuam-se das esquerda

para a direita. A prioridade destes operadores pode ser alterada


utilizando parêntesis, sendo as operações delimitadas pelos parêntesis
realizadas primeiro.

APLICAÇÕES INFORMÁTICAS | 12ºANO 45


PRIORIDADE DOS OPERADORES

Prioridade Operadores

NÍVEL 1 NOT

NÍVEL 2 * / ^ DIV MOD AND

NÍVEL 3 + - OR

NÍVEL 4 = <> < <= > >=


APLICAÇÕES INFORMÁTICAS | 12ºANO 46
PRIORIDADE DOS OPERADORES

 Considera-se a expressão:
− b + b 2 − 4ac
2a
 Inicialmente evidencia-se o numerador do denominador
recorrendo à utilização de parêntesis.
 (-b+b2-4ac)/(2a)

 De seguida trata-se os restantes termos e a expressão fica:


 (-b+b^2-4*a*c)/(2*a)

APLICAÇÕES INFORMÁTICAS | 12ºANO 47


EXPRESSÕES

 São conjuntos de variáveis, constantes e operadores passíveis de tratamento


informático

 As expressões podem ser classificadas de dois tipos:

 Numéricas – são aquelas em que se utilizam apenas operadores aritméticos.

2*a+b*c

 Lógicas – são expressões em que se utilizam operadores relacionais e/ou lógicos e,


das quais se espera obter um resultado lógico.

x>20 e x<=10

APLICAÇÕES INFORMÁTICAS | 12ºANO 48


EXPRESSÕES

 Expressões como:
 2ab+3c têm de ser sujeitas a alterações, de modo a poderem ser
entendidas pelo computador e utilizadas em programação. Deste modo
deverá ser escrito na forma
 2*a*b+3*c
Expressões
Uso comum Em programação
3ab 3*a*b
2(a+b) 2*(a+b)
2x-y 2*x-y
APLICAÇÕES INFORMÁTICAS | 12ºANO
−4𝑎𝑐 (-4*a*c)/(2*b) 49

2𝑏
EXPRESSÕES | EXERCÍCIOS
▪ INDIQUE O RESULTADO DAS SEGUINTES EXPRESSÕES:
❑ 3 DIV 2
❑ 3 MOD 2
❑ (20 DIV 4) MOD 4
❑ (1< 2) ou (3>5)
❑ (((10DIV 5) MOD 2) > 5) OU (3<(2MOD2))
❑ ~(4<6)

APLICAÇÕES INFORMÁTICAS | 12ºANO 50


ATRIBUIÇÃO DE DADOS

 A atribuição consiste simplesmente em atribuir a uma variável um


valor que pode ser constante ou uma expressão (armazena um
valor)
 Esta operação é representada em algoritmia pelo sinal  .
 X25 significa que a variável X possui a partir deste momento o
valor 25.
 Se à variável X tivesse anteriormente sido atribuído outro valor, ele era
destruído aquando da atribuição do valor 25, isto é, uma operação de
atribuição destrói um eventual valor que essa variável tivesse armazenado
anteriormente.

APLICAÇÕES INFORMÁTICAS | 12ºANO 51


ATRIBUIÇÃO DE DADOS | EXEMPLOS
 Exemplo de atribuição:

a
 x  a/b+7 x = +7
b
 Escreva o comando de atribuição para cada uma das seguintes fórmulas:

b
a+
a+b c b c
a+ ( a + b)
c−d d−
e c−d d
f
52

APLICAÇÕES INFORMÁTICAS | 12ºANO


ESCREVER UM ALGORITMO

 Ao montar um algoritmo, primeiro temos de dividir o problema apresentado em


três fases fundamentais.

ENTRADA PROCESSAMENTO SAÍDA


 ENTRADA: São os dados de entrada do algoritmo.
 PROCESSAMENTO: São os procedimentos utilizados para chegar ao
resultado final.
 SAÍDA: São os dados já processados.

APLICAÇÕES INFORMÁTICAS | 12ºANO 53


O QUE É NECESSÁRIO PARA CONSTRUIR UM
ALGORITMO

1. Compreender problema (o que se pretende).

2. Identificar os dados de entrada (os dados fornecidos e a sua situação inicial).

3. Identificar os dados de saída (os dados resultantes do processamento).

4. Identificar as operações de processamento (os cálculos e as restrições para a obtenção dos dados
de saída a partir dos dados de entrada).

5. Elaborar o algoritmo, definindo:

1. As variáveis necessárias para armazenar as entradas a efetuar o processamento;

2. As instruções necessárias.

6. Testar o algoritmo.
APLICAÇÕES INFORMÁTICAS | 12ºANO 54
COMO ESCREVER UM ALGORITMO EM PSEUDOCÓDIGO

 Um algoritmo em pseudocódigo é normalmente constituído por um título, uma

descrição da função do algoritmo e a sequência de passos para a resolução


do problema.

 Cada passo do algoritmo deverá ter uma descrição e se um passo for composto

por mais do que uma instrução estas serão executadas pela ordem que
aparecem.

 O algoritmo termina com as palavras Saída ou Fim.

APLICAÇÕES INFORMÁTICAS | 12ºANO 55


COMO ESCREVER UM ALGORITMO EM PSEUDOCÓDIGO

Algoritmo <nome_do_algoritmo>;
<declaração_de_variáveis>;
Início
<corpo do algoritmo>;
Fim

APLICAÇÕES INFORMÁTICAS | 12ºANO 56


EXEMPLO
DIFERENTES FORMAS DE DESCREVER A RESOLUÇÃO DO PROBLEMA

Linguagem natural
(Algoritmo – descrição Código em LP
narrativa) Fluxograma Pseudocódigo
C/ Python

Algoritmo soma; Program soma;


1. Início Início
Variáveis a,b,c: real; Var a,b,c: real;
2. Ler dois valores reais (a,b)
Ler (a,b) Início Begin
3. Efetuar o cálculo da soma dos Ler (a,b); Readln(a,b);
dois valores reais (c=a+b) cç a+b c := a+b;
Escrever (c); Writeln(c);
4. Escrever o resultado da soma (c) cç a+b Fim. End.

5. Fim

Escrever (c)

Fim
APLICAÇÕES INFORMÁTICAS | 12ºANO 57
EXEMPLO
DIFERENTES FORMAS DE DESCREVER A RESOLUÇÃO DO PROBLEMA

Linguagem natural
(Algoritmo – Código em LP
descrição narrativa) Fluxograma Pseudocódigo
C/Python

1. Início

2. Ler dois valores reais (a,b)

3. Efetuar o cálculo da soma


dos dois valores reais
(c=a+b)

4. Escrever o resultado da soma


(c)

5. Fim

APLICAÇÕES INFORMÁTICAS | 12ºANO 58


EXEMPLO
DIFERENTES FORMAS DE DESCREVER A RESOLUÇÃO DO PROBLEMA

Linguagem natural
Código em LP
(Algoritmo – descrição Fluxograma Pseudocódigo
C/Python
narrativa)
Algoritmo soma; Program soma;
1. Início Início
Variáveis a,b,c: real; Var a,b,c: real;
2. Ler dois valores reais (a,b)
Ler (a,b) Início Begin
3. Efetuar o cálculo da soma dos Ler (a,b); Readln(a,b);
dois valores reais (c=a+b) c: = a+b c := a+b;
Escrever (c); Writeln(c);
4. Escrever o resultado da soma (c) ca+b Fim. End.

5. Fim

Escrever (c)

Fim

APLICAÇÕES INFORMÁTICAS | 12ºANO 59


EXEMPLO
DIFERENTES FORMAS DE DESCREVER A RESOLUÇÃO DO PROBLEMA

Linguagem natural
Código em LP
(Algoritmo – descrição Fluxograma Pseudocódigo
C/Python
narrativa)
Algoritmo soma Program soma;
1. Início Início
Variáveis a,b,c: real Var a,b,c: real;
2. Ler dois valores reais (a,b)
Begin
Ler (a,b) Início
3. Efetuar o cálculo da soma dos Escrever(“introduza os 2 Readln(a,b);
dois valores reais (c=a+b) números”) c := a+b;
Writeln(c);
4. Escrever o resultado da soma (c) Ca+b Ler (a,b) End.

5. Fim Ca+b

Escrever (c) Escrever (“a soma é:”, c)

Fim.

Fim

APLICAÇÕES INFORMÁTICAS | 12ºANO 60


EXEMPLO
DIFERENTES FORMAS DE DESCREVER A RESOLUÇÃO DO PROBLEMA

Linguagem natural
Código em LP C Código em LP
(Algoritmo – descrição Fluxograma Pseudocódigo
PYTHON
narrativa)

Algoritmo soma #include<stdio.h> # Solicitar ao utilizador


1. Início Início int main() para inserir dois números
Variáveis a,b,c: inteiro {
int a, b, c; numero1 =
2. Ler dois valores reais (a,b) int(input("Digite o
Ler (a,b) Início
printf(“Insira o primeiro primeiro número: "))
3. Efetuar o cálculo da Escrever(“introduza numero: "); numero2 =
soma dos dois valores os dois núm.”) scanf("%d",&a);
reais (c=a+b) Ler (a,b) int(input("Digite o
printf(“Insira o segundo segundo número: "))
Ca+b ca+b numero: ");
4. Escrever o resultado da Escrever (“A soma é scanf("%d",&b);
soma (c) =“, c) # Calcula a soma dos
c=a+b;
números
5. Fim Fim
Escrever (c) soma = numero1 +
. printf("O valor da soma é",c);numero2

return 0; # Imprime a soma


Fim } print("A soma dos
números é:", soma)
APLICAÇÕES INFORMÁTICAS | 12ºANO 61
VANTAGENS E DESVANTAGENS
Descrição narrativa
Fluxograma Pseudocódigo
- Algoritmo -
Independência de linguagem de
programação.
VANTAGENS

Padrão mundial. Usa o português como base.


Ferramenta bem Define-se melhor quais e como os dados
O português é bastante conhecida. vão estar estruturados.
conhecido por nós. Figuras dizem muito mais Passagem quase imediata do algoritmo
que palavras. para uma linguagem de programação qualquer.

Imprecisão.
DESVANTAGEN

Pouca confiabilidade (a Complica-se à medida que o


imprecisão acarreta a algoritmo cresce. Pouca
desconfiança). atenção aos dados, não Exige a definição de uma linguagem não real
Extensão (normalmente, escreve- oferecendo recursos para para trabalho.
se muito para dizer pouca coisa). declará- los. Não é padronizada.
S

APLICAÇÕES INFORMÁTICAS | 12ºANO 62


TESTE E CONTROLO DE ERROS EM ALGORITMIA

 O teste e o controlo de erros num algoritmo permite verificar se este resolve o

problema pretendido. Para isso utiliza-se a técnica do tracing (traçagem), que


permite acompanhar passo a passo a execução de um algoritmo, eliminando, desta
forma, a possibilidade de ocorrência de erros.

 O tracing consiste, assim, em testar um algoritmo com valores de entrada,

observando o comportamento interno ao longo dos vários passos que compõem o


algoritmo.

APLICAÇÕES INFORMÁTICAS | 12ºANO 63


IMPLEMENTAÇÃO DO TRACING

1. Criar uma tabela;

2. Na primeira linha colocam-se as variáveis, as condições ou expressões lógicas


e as operações que se pretendem testar.

3. Enumeram-se os passos na primeira coluna;

4. Preenche-se a tabela, passo a passo, atribuindo valores às variáveis e


executando as operações presentes no algoritmo.

APLICAÇÕES INFORMÁTICAS | 12ºANO 64


EXEMPLO | TRAÇAGEM

Crie um algoritmo que leia 2 números e calcule a soma desses


números.

Algoritmo soma
Variável a, b, c:Inteiro a=4eb=5
Inicio
Ler(a) a b c ←a + b Saída
Ler(b)
c←a + b 1ºPasso 4
Escrever(c)
2ºPasso 4 5
Fim
3ºPasso 4 5 9

4ºPasso 4 5 9 9

APLICAÇÕES INFORMÁTICAS | 12ºANO 65


EXERCÍCIOS
Crie a traçagem dos seguintes algoritmos, atribuindo à variável a o valor de entrada 2,
na alínea a) e às variáveis a e b os valores de entrada true e false, respetivamente, na
alínea b).
a) b)

Algoritmo troca_valores
Algoritmo exemplo1
Variáveis a, b, c: lógico
Variáveis a, b, c: inteiro Início
Início Ler (a)
Ler (b
Ler (a)
c  a
b  2 * a a  b
c  a + b b  c
Escrever (a, b)
Escrever (a, b, c)
Fim
Fim

APLICAÇÕES INFORMÁTICAS | 12ºANO 66


ESTRUTURAS DE CONTROLO
As estruturas de controlo avaliam o desenrolar das
instruções de um programa. Estas subdividem-se em:
• Sequencial;
• Decisão ou selecção;
• Repetição ou ciclos.

APLICAÇÕES INFORMÁTICAS | 12ºANO 67


ESTRUTURAS DE CONTROLO | ESTRUTURA SEQUENCIAL

 Neste tipo de estrutura as instruções de um


programa são executadas numa
determinada sequência sem que este
possa sofrer alterações através de dados
de entrada.

APLICAÇÕES INFORMÁTICAS | 12ºANO 68


EXERCÍCIO | EXEMPLO
Início

 Calcular o valor total de um produto. Escrever (“Digita a designação


do produto”)

Algoritmo Total_produto Ler (nome)


Variável quantidade: inteiro
total, preco: real Escrever (“Digita a quantidade
do produto”)
nome: alfanumérico
Início
Ler (quantidade)
Escrever (“Digite o nome do produto”)
Ler (nome)
Escrever (“Digita o preço por
Escrever (“Digite a quantidade do produto”) unidade do produto”)
Ler (quantidade)
Escrever (“Digite o preço por unidade do produto”) Ler (preco)
Ler (preco)
total  quantidade * preco total  quantidade * produto
Escrever (“O valor total do produto “, nome, “ é ”, total)
Fim Escrever (“O valor total do
produto “, nome, “ é ”, total)

PSEUDOCÓDIGO Fim FLUXOGRAMA


APLICAÇÕES INFORMÁTICAS | 12ºANO 69
ESTRUTURAS DE CONTROLO | ESTRUTURA DE DECISÃO OU
SELEÇÃO

 As estruturas de decisão ou selecção permitem escolher uma opção, de entre


as existentes para o desenvolvimento de um programa, executando sequências
alternativas de acordo com os dados de entrada.

 Este tipo de estrutura subdivide-se em estruturas de:

• Seleção simples;

• Seleção composta;

• Seleção encadeada;

• Seleção múltipla.

APLICAÇÕES INFORMÁTICAS | 12ºANO 70


ESTRUTURAS DE CONTROLO | ESTRUTURA DE SELEÇÃO
SIMPLES

 Através da utilização da estrutura de selecção


simples apenas são executadas as instruções
quando a condição de selecção for avaliada com
o valor lógico True, caso contrário, com o valor
lógico False, o programa continua a execução Sintaxe
das instruções fora desta estrutura de selecção ...
Se <expressão> Então
simples. ...
FimSe
...
APLICAÇÕES INFORMÁTICAS | 12ºANO 71
EXERCÍCIO | EXEMPLO
 Calcular a diferença entre dois pesos, se o peso Início
introduzido pelo utilizador for inferior a 70 kg
Escrever (“Digita o seu
nome”)
Ler (nome)
Algoritmo peso_inf_70
Variável dif, peso: real
Escrever (“Digita o seu
nome: alfanumérico peso”)
Início Ler (peso)
Escrever (“Digite o seu nome”)
False
Ler (nome) Peso < 70 então
Escrever (“Digite o seu peso”) True
Ler (peso) dif  70-peso;
Se peso < 70 então
dif  70-peso Escrever “Falta ao “, nome, “
Escrever (“Falta ao “, nome, “ “, dif, “ kg para atingir os 70 “, dif, “kg para atingir os 70
kg”) kg”)
FimSe
Escrever (“O programa vai terminar”) Escrever (“O programa
Fim vai terminar”)

PSEUDOCÓDIGO Fim
APLICAÇÕES INFORMÁTICAS | 12ºANO
FLUXOGRAMA 72
EXERCÍCIO | EXEMPLO
Considerando os seguintes valores de entrada, faça o teste ao
algoritmo:
Nome igual a “Rui”
Peso igual a 67
Nome Peso Peso<70 Dif  70-peso Saída

1º passo Rui
2º passo Rui 80
3º passo Rui 80 (80<70) Falso
4º passo Rui 80 - - “O programa vai terminar”
1º passo Rui
2º passo Rui 67
3º passo Rui 67 V “O programa vai terminar”
4º passo Rui 67 V 3
5º passo Rui 67 V 3 “Falta ao Rui 3 kg para atingir os 70kg”
APLICAÇÕES INFORMÁTICAS | 12ºANO 73
6º passo Rui 67 - - “O programa vai terminar”
ESTRUTURAS DE CONTROLO | ESTRUTURA DE SELEÇÃO
COMPOSTA

 Através da utilização da estrutura de selecção


composta, podem existir duas opções possíveis
para o desenrolar das instruções do programa e
que são seleccionadas de acordo com o valor
lógico resultante da avaliação de uma condição ou Sintaxe
expressão. ...
Se <expressão> Então
...
Senão
...
FimSe
APLICAÇÕES INFORMÁTICAS | 12ºANO
... 74
EXERCÍCIO | EXEMPLO
Inserir dois números e determinar o maior dos dois.
Início

Algoritmo maior_de_2 Escrever (“Digite um número inteiro”) FL


Variável maior, num1, num2: inteiro U
Início Ler (num1) X
Escrever (“Digite um número inteiro”)
O
Ler (num1) Escrever (“Digite um num.
Escrever (“Digite um número inteiro diferente do anterior”) Int. Diferente do anterior”) G
Ler (num2) R
Se num1> num2 então Ler (num2) A
maiornum1
senão
M
False
maiornum2 num1 > num2 A
FimSe True
Escrever (“O maior dos dois número é ”, maior) maior  num1 maior num2
Fim

PSEUDOCÓDIGO Escrever (“O maior dos dois


número é “, maior)
APLICAÇÕES INFORMÁTICAS | 12ºANO 75

Fim
EXERCÍCIO | EXEMPLO
Considerando os seguintes valores relativos a entradas, faça o teste ao algoritmo.
Primeira Segunda
num1 igual a 7 num1 igual a 5
num2 igual a 2 num2 igual a 6
num1 num2 num1>num2 maiornum1 maiornum2 Saída

1º passo 7
2º passo 7 2
3º passo 7 2 (7>2) TRUE
4º passo 7 2 - 7 -
5º passo 7 2 - 7 - O maior dos dois
número é 7

num1 num2 num1>num2 maiornum1 maiornum2 Saída

1º passo 5
2º passo 5 6
3º passo 5 6 (5>6) FALSE
4º passo 5 6 - - 6
APLICAÇÕES INFORMÁTICAS | 12ºANO 76
5º passo 5 6 - - 6 O maior dos dois
número é 6
ESTRUTURAS DE CONTROLO | ESTRUTURA DE SELEÇÃO
ENCADEADA

 Numa estrutura de selecção encadeada


podem existir várias opções encadeadas para o
Sintaxe
desenrolar das instruções do programa. Cada uma
...
destas opções pode ser seleccionada de acordo Se <expressão> Então
...
com o valor lógico resultante da avaliação da sua Senão Se <expressão> Então
...
condição ou expressão. Senão
...
FimSe
FimSe
APLICAÇÕES INFORMÁTICAS | 12ºANO
... 77
EXERCÍCIO | EXEMPLO

 Inserir dois números e determinar se os dois são iguais entre si ou qual o maior deles.

Algoritmo maior_igual_2
Variável num1, num2:inteiro
Início
Escrever (“Digite um número inteiro”)
Ler (num1)
Escrever (“Digite outro número inteiro”)
Ler (num2)
Se num1= num2 então
Escrever (“Os números são iguais”) PSEUDOCÓDIGO
Senão Se num1>num2 então
Escrever (“O maior dos dois número é ”, num1)
Senão Escrever (“O maior dos dois número é ”, num2)
FimSe
FimSe
Fim

APLICAÇÕES INFORMÁTICAS | 12ºANO 78


EXERCÍCIO | EXEMPLOInício
Escrever (“Digite um número inteiro”)

Ler (num1)

Escrever (“Digite outro número inteiro”)


FLUXOGRAMA

Ler (num2)

V
num1 = num2 Escrever (“Os números são iguais”)

F
V
num1 > num2 Escrever (“O maior dos dois números é”,
num1”)
F
Escrever (“O maior dos dois números é”, num2)

APLICAÇÕES INFORMÁTICAS | 12ºANO 79

Fim
EXERCÍCIO | EXEMPLO
Considerando os seguintes valores relativos a entradas, faça o teste ao algoritmo.
Primeira Segunda
num1 igual a 16 num1 igual a 13
num2 igual a 16 num2 igual a 19
num1 num2 num1=num2 num1>num2 Saída

1º passo 16
2º passo 16 16
3º passo 16 16 (16=16) TRUE
4º passo 16 16 - - Os números são iguais

num1 num2 num1=num2 num1>num2 Saída

1º passo 13
2º passo 13 19
3º passo 13 19 (13=19) FALSE
4º passo 13 19 . (13>19) FALSE
5º passo 13 19 . - O maior dos números é 19
APLICAÇÕES INFORMÁTICAS | 12ºANO 80
ESTRUTURAS DE CONTROLO | ESTRUTURA DE SELEÇÃO
ENCADEADA

Sintaxe
 Numa estrutura de seleção múltipla é possível ...
Escolha variável
selecionar uma de múltiplas opções para o Caso valorvariável1
Instruções
desenrolar das instruções do programa, sendo …
Caso valorvariáveln
selecionada de acordo com o valor de uma variável. instruções
Outrocaso
Instrução
fimescolha
...

APLICAÇÕES INFORMÁTICAS | 12ºANO 81


EXERCÍCIO | EXEMPLO 1
 Determine o dia da semana de acordo com o valor inserido.
Algoritmo Designa_dias
Variável dia: inteiro
Início
Escrever (“Insira um número inteiro de 1 a 7”)
Ler (dia)
Escolha dia
Caso 1 Escrever (“Segunda-feira”)
Caso 2 Escrever (“Terça-feira”)
Caso 3 Escrever (“Quarta-feira”)
Caso 4 Escrever (“Quinta-feira”)
Caso 5 Escrever (“Sexta-feira”)
Caso 6 Escrever (“Sábado”)
Caso 7 Escrever (“Domingo”)
Outrocaso Escrever (“Inseriu um número inválido”)
Fimescolha

PSEUDOCÓDIGO
APLICAÇÕES INFORMÁTICAS | 12ºANO 82
EXERCÍCIO | EXEMPLO Inicio

 Fluxograma Ler (dia)

dia

Escrever Escrever Escrever Escrever Escrever Escrever


“2ªfeira” “3ªfeira” “4ªfeira” “5ªfeira” “6ªfeira” “Sábado”

APLICAÇÕES INFORMÁTICAS | 12ºANO 83

Fim
EXERCÍCIO | EXEMPLO

Considerando que o valor de entrada é 4, faça o teste ao algoritmo.

Considerando que o valor de entrada é 9, faça o teste ao algoritmo.


dia Saída

1º passo 4
2º passo 4 Quinta-feira

dia Saída

1º passo 9
2º passo 9 Inseriu um número inválido

APLICAÇÕES INFORMÁTICAS | 12ºANO 84


EXERCÍCIO | EXEMPLO 2
Converter uma nota quantitativa em qualitativa

P
S F
E L
U U
D X
O O
C G
Ó R
D A
I M
G A
O
APLICAÇÕES INFORMÁTICAS | 12ºANO 85
ESTRUTURAS DE CONTROLO | ESTRUTURAS DE REPETIÇÃO OU
CICLOS

 As estruturas de repetição ou ciclos permitem repetir um


conjunto de instruções de um programa, controlado pelo
resultado lógico da avaliação de uma condição ou expressão.

 Estas estruturas ou ciclos podem apresentar duas variantes


principais:

• Estruturas de repetição com a condição de controlo no início do


ciclo;
• Estruturas de repetição com a condição de controlo no final do
ciclo;
APLICAÇÕES INFORMÁTICAS | 12ºANO 86
ESTRUTURAS DE CONTROLO | ESTRUTURAS DE REPETIÇÃO OU
CICLOS

 As estruturas de repetição são as seguintes:


 Ciclo Repetir
 Ciclo Enquanto
 Ciclo Para

APLICAÇÕES INFORMÁTICAS | 12ºANO 87


ESTRUTURAS DE CONTROLO | ESTRUTURAS DE REPETIÇÃO OU
CICLOS

ESTRUTURAS DE
REPETIÇÃO
OU CICLOS

UTILIZANDO UM BASEADAS NUMA


CONTADOR CONDIÇÃO
Para ... Ate ... Faca

ENQUANTO SE ATÉ SE VERIFICAR


VERIFICA UMA DA UMA DADA
CONDIÇÃO CONDIÇÃO
Enquanto ... Faca Repetir ... Até
APLICAÇÕES INFORMÁTICAS | 12ºANO 88
ESTRUTURAS DE CONTROLO NO FINAL DO CICLO

 Estrutura Repetir
O que as representações formais traduzem em relação a estruturas de repetição deste
tipo é o seguinte:

• A palavra que indica o início do ciclo é a palavra “Repetir” (Repeat);

• Segue-se um conjunto ou bloco de instruções que deverá ser executado até que a
condição ou expressão lógica – no final da estrutura – assuma o valor
Verdadeiro(V).

APLICAÇÕES INFORMÁTICAS | 12ºANO 89


ESTRUTURAS DE CONTROLO NO FINAL DO CICLO

 Como esta condição é avaliada somente no final da


estrutura, isso implica que as instruções nela indicadas
serão executadas de certeza, pelo menos uma vez.
Essas mesmas instruções continuarão em execução – em
ciclo – até que essa mesma condição ou expressão assuma o
valor de Verdadeiro (V)

APLICAÇÕES INFORMÁTICAS | 12ºANO 90


ESTRUTURAS DE CONTROLO NO FINAL DO CICLO
Estrutura Repetir

Estrutura de repetição “Repetir...Até que...” em


pseudocódigo

APLICAÇÕES INFORMÁTICAS | 12ºANO 91


ESTRUTURAS DE CONTROLO NO FINAL DO CICLO
Estrutura Repetir

Estrutura de repetição
“Repetir...Até que...” em
fluxograma
APLICAÇÕES INFORMÁTICAS | 12ºANO 92
EXERCÍCIO | EXEMPLO

 Devolver os números entre 1 e 10.

Algoritmo numeros PSEUDOCÓDIGO


Variável i: inteiro
Início
i1
Repita
escrever (i)
ii+1
ate i > 10
Fim
APLICAÇÕES INFORMÁTICAS | 12ºANO 93
ESTRUTURAS DE CONTROLO NO INÍCIO DO CICLO

 Estrutura Enquanto
O que as representações formais traduzem em relação a estruturas de repetição deste
tipo é o seguinte:

• a palavra que indica o início do ciclo é a palavra “Enquanto" (While);

• segue-se a condição ou expressão lógica que controla a execução das ações


dentro do ciclo;

• só depois da condição de controlo do ciclo é que surgem as ações a executar.

APLICAÇÕES INFORMÁTICAS | 12ºANO 94


ESTRUTURAS DE CONTROLO NO INÍCIO DO CICLO
 Estrutura Enquanto

Estrutura de repetição “Enquanto.... Fazer...”


em pseudocódigo

APLICAÇÕES INFORMÁTICAS | 12ºANO 95


ESTRUTURAS DE CONTROLO NO INÍCIO DO CICLO

Como estas ações indicadas só serão executadas enquanto a condição se

verificar, pode acontecer algo que não acontecia no ciclo com a condição

no final: pode acontecer que as ações indicadas no ciclo não sejam

executadas sequer uma única vez, bastando para isso que a condição de

controlo seja falsa logo na primeira avaliação.

APLICAÇÕES INFORMÁTICAS | 12ºANO 96


ESTRUTURAS DE CONTROLO NO INÍCIO DO CICLO
 Estrutura Enquanto Fluxograma

Estrutura de repetição
“Enquanto.... Fazer...” em
fluxograma

APLICAÇÕES INFORMÁTICAS | 12ºANO 97


EXERCÍCIO | EXEMPLO

 Devolver os números entre 1 e 10.

PSEUDOCÓDIGO
Algoritmo numeros
Variável i: inteiro
Início
i1
Enquanto i <=10
faca
escrever (i)
ii+1
Fimenquanto
APLICAÇÕES INFORMÁTICAS | 12ºANO 98

Fim
ESTRUTURAS DE CONTROLO
Temos, então, a seguinte diferença fundamental entre os dois tipos de

estruturas de repetição:

• No ciclo “Repetir...Até que...” – em que a condição é avaliada no final -,

temos a certeza de que as instruções indicadas serão executadas pelo

menos uma vez;

• No ciclo “Enquanto...Fazer...”, pode acontecer que a condição – que é

avaliada logo no início do ciclo – não se verifique e, nesse caso, as ações

indicadas não serão executadas nenhuma vez.

99
APLICAÇÕES INFORMÁTICAS | 12ºANO
CONCEITOS DE ITERAÇÃO, CONTADOR E ACUMULADOR

100
APLICAÇÕES INFORMÁTICAS | 12ºANO
CONCEITOS DE ITERAÇÃO, CONTADOR E ACUMULADOR
 No algoritmo apresentado no diapositivo anterior, pretendemos efetuar
uma soma de várias parcelas a introduzir consecutivamente pelo
utilizador, até que o valor acumulado (somatório) seja maior que 1000.
No final, serão apresentados os valores das variáveis:

• Contador – correspondente ao número de parcelas introduzidas;

• Soma – correspondente ao somatório ou valor acumulado das parcelas


introduzidas.

APLICAÇÕES INFORMÁTICAS | 12ºANO 101


CONCEITOS DE ITERAÇÃO, CONTADOR E ACUMULADOR

 Com base nos valores dessas duas variáveis (Soma e Contador)


será calculada e apresentada a média dos valores introduzidos
(dividindo a média de Soma pelo valor de Contador).

 Este algoritmo, contendo uma estrutura de repetição ou ciclo, vai-


nos permitir esclarecer os conceitos de iteração, contador e
acumulador, que são típicos dos ciclos.

APLICAÇÕES INFORMÁTICAS | 12ºANO 102


CONCEITOS DE ITERAÇÃO, CONTADOR E ACUMULADOR

 Comecemos pelo conceito de iteração que significa repetição. Em


algoritmia e programação o termo iteração é usado para designar cada
uma das vezes que as ações dentro de um ciclo são executadas
(repetidas).

 Um contador – no contexto das estruturas de repetição - é uma


variável que conta o número de iterações ou repetições de um ciclo.

APLICAÇÕES INFORMÁTICAS | 12ºANO 103


CONCEITOS DE ITERAÇÃO, CONTADOR E ACUMULADOR
 Analisando o algoritmo anterior, temos uma variável a que demos o nome de Contador.
Antes de entrarmos na estrutura de repetição atribuímos zero (0) a essa variável. Dentro
do ciclo, temos a instrução:

Contador Contador +1;

 Esta atribuição atribui à variável Contador o valor que ela tinha anteriormente depois de
somado com uma unidade. Assim, esta variável efetua uma contagem do número de vezes
que as ações dentro do ciclo são executadas, ou seja, o número de iterações do ciclo.

APLICAÇÕES INFORMÁTICAS | 12ºANO 104


CONCEITOS DE ITERAÇÃO, CONTADOR E ACUMULADOR

Vejamos agora o conceito de acumulador.

 No algoritmo existe uma variável a que chamamos Soma e que se destina a efetuar o

somatório ou valor acumulado das parcelas introduzidas.

 E como é que esse somatório é efetuado?

 Antes do ciclo, atribuímos zero (0) à variável Soma. Dentro do ciclo temos a instrução:

Soma Soma + Parcela;

 Nesta instrução, a variável Soma recebe o valor que tinha anteriormente depois de

adicionado com o valor que Parcela tiver nesse momento.


105

APLICAÇÕES INFORMÁTICAS | 12ºANO


CONCEITOS DE ITERAÇÃO, CONTADOR E ACUMULADOR

 Como isto passa dentro de um ciclo, o que realmente acontece é que a

variável Soma vai acumulando o somatório dos vários valores que forem
sendo introduzidos até que o ciclo termine.

 No final, a variável soma acumulou o somatório de todos os valores

introduzidos através da variável parcela.

 A variável Soma desempenha aqui o papel de acumulador

APLICAÇÕES INFORMÁTICAS | 12ºANO 106


CONCEITOS DE ITERAÇÃO, CONTADOR E ACUMULADOR

APLICAÇÕES INFORMÁTICAS | 12ºANO 107


CONCEITOS DE ITERAÇÃO, CONTADOR E
ACUMULADOR

 Na tabela anterior podemos ver uma representação da evolução dos valores das
variáveis Contador, Parcela e Soma dentro do ciclo, supondo que os valores
introduzidos para a variável Parcela: 500; 400 e 200.

 A instrução Contador Contador +1 faz com que a variável Contador


passe, na primeira iteração, de 0 para 1; na segunda iteração, de 1 para 2; e assim
sucessivamente.

 A instrução Soma Soma + Parcela, por sua vez, faz com que a variável
Soma passe, na primeira iteração, de 0 para 500 (o primeiro valor introduzido na
parcela)
108
APLICAÇÕES INFORMÁTICAS | 12ºANO
ESTRUTURAS DE REPETIÇÃO COM CONTADOR
AUTOMÁTICO
 Estrutura PARA ... ATE ... FACA

 Esta estrutura repete uma sequência de comandos um determinado número de


vezes.

 É conhecido o número de vezes que o bloco de instruções será repetido.

 Utiliza um contador automático implementado através do tipo inteiro. O valor


desta variável vai ser incrementado ou decrementado (contagem crescente ou
decrescente do número de repetições indicadas na estrutura do ciclo)

APLICAÇÕES INFORMÁTICAS | 12ºANO 109


ESTRUTURAS DE CONTROLO | ESTRUTURAS DE
REPETIÇÃO

 Estrutura Para Fluxograma

APLICAÇÕES INFORMÁTICAS | 12ºANO 110


EXERCÍCIO | EXEMPLO

 Devolver os números inteiros compreendidos entre os 20 e 200.

PSEUDOCÓDIGO
Algoritmo numeros
Variável i: inteiro
Início
Para i  20 Até 200 Faca
Escreva (i)
Fimpara
Fim
APLICAÇÕES INFORMÁTICAS | 12ºANO 111

Você também pode gostar