Escolar Documentos
Profissional Documentos
Cultura Documentos
INFORMÁTICAS
B 12ºANO
LINGUAGEM
É uma forma de comunicação, que utiliza símbolos e determinadas
regras para os combinar.
• 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
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
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
3ª
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
7
INTERPRETADORES E COMPILADORES
Interpretador
Compilador
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
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
16
ALGORITMIA:
NOÇÃO DE ALGORITMO
20
ALGORITMIA:
CONCEITO DE ALGORITMO
21
ALGORITMIA:
CONCEITO DE ALGORITMO
Ser eficaz
Ser eficiente
Variáveis
Dados
Constantes
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
x>5 V x y +1
Inicio Escrever (x) x y +1
Exemplo F
Escrever (x)
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…
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)
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
* Multiplicação c=5*2 c = 10
^ Exponenciação k=5^2 k = 25
= Igual A=B
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
Variável Dado
Nome Bernardo
Nome Gonçalo
Idade 17
Idade 16
Prioridade Operadores
NÍVEL 1 NOT
NÍVEL 3 + - OR
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)
2*a+b*c
x>20 e x<=10
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)
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
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).
2. As instruções necessárias.
6. Testar o algoritmo.
APLICAÇÕES INFORMÁTICAS | 12ºANO 54
COMO ESCREVER UM ALGORITMO EM PSEUDOCÓDIGO
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.
Algoritmo <nome_do_algoritmo>;
<declaração_de_variáveis>;
Início
<corpo do algoritmo>;
Fim
Linguagem natural
(Algoritmo – descrição Código em LP
narrativa) Fluxograma Pseudocódigo
C/ Python
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
5. Fim
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) ca+b Fim. End.
5. Fim
Escrever (c)
Fim
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) Ca+b Ler (a,b) End.
5. Fim Ca+b
Fim.
Fim
Linguagem natural
Código em LP C Código em LP
(Algoritmo – descrição Fluxograma Pseudocódigo
PYTHON
narrativa)
Imprecisão.
DESVANTAGEN
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
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
• Seleção simples;
• Seleção composta;
• Seleção encadeada;
• Seleção múltipla.
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
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 maiornum1 maiornum2 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
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
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
Ler (num1)
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)
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
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
...
PSEUDOCÓDIGO
APLICAÇÕES INFORMÁTICAS | 12ºANO 82
EXERCÍCIO | EXEMPLO Inicio
dia
Fim
EXERCÍCIO | EXEMPLO
1º passo 4
2º passo 4 Quinta-feira
dia Saída
1º passo 9
2º passo 9 Inseriu um número inválido
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
ESTRUTURAS DE
REPETIÇÃO
OU CICLOS
Estrutura Repetir
O que as representações formais traduzem em relação a estruturas de repetição deste
tipo é o seguinte:
• 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).
Estrutura de repetição
“Repetir...Até que...” em
fluxograma
APLICAÇÕES INFORMÁTICAS | 12ºANO 92
EXERCÍCIO | EXEMPLO
Estrutura Enquanto
O que as representações formais traduzem em relação a estruturas de repetição deste
tipo é o seguinte:
verificar, pode acontecer algo que não acontecia no ciclo com a condição
executadas sequer uma única vez, bastando para isso que a condição de
Estrutura de repetição
“Enquanto.... Fazer...” em
fluxograma
PSEUDOCÓDIGO
Algoritmo numeros
Variável i: inteiro
Início
i1
Enquanto i <=10
faca
escrever (i)
ii+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:
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:
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.
No algoritmo existe uma variável a que chamamos Soma e que se destina a efetuar o
Antes do ciclo, atribuímos zero (0) à variável Soma. Dentro do ciclo temos a instrução:
Nesta instrução, a variável Soma recebe o valor que tinha anteriormente depois de
variável Soma vai acumulando o somatório dos vários valores que forem
sendo introduzidos até que o ciclo termine.
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 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
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