Escolar Documentos
Profissional Documentos
Cultura Documentos
i. SINTAXE
Conjunto de regras que especificam a estrutura interna
de uma linguagem para uso normalizado (forma).
ii. SEMÂNTICA
Significado dos vários termos das linguagens (conteúdo).
Linguagem de programação
Sistema de escrita formal, assente num método
normalizado, para a elaboração das operações a
executar nos computadores. As instruções obedecem a
um conjunto de regras sintáticas e semânticas.
Gerações de Linguagens de Programação
Existem milhares de linguagens de programação,
classificadas por gerações.
Linguagem diretamente executada pelo
Linguagens de 1.ª geração processador. Apenas são usados 0’s e 1’s.
baixo nível (Linguagem
máquina) Exemplo:
Linguagem máquina ou binária
Próximas do
código binário
(0’s e 1’s).
Difíceis de Linguagem que utiliza alguma notação
compreender e 2.ª geração simbólica compreensível pelo ser humano.
de programar. (Linguagens de Muito próxima da linguagem máquina.
montagem) Exemplo:
Assembly
É necessário escrever passo-a-passo cada
3.ª geração tarefa a ser executada pelo computador.
(Linguagens
Procedimentais) Exemploss:
Linguagens de Basic, Visual Basic, C, C++, C#, Pascal, Java,...
alto nível
4.ª geração Linguagens que geram código por si próprias,
Mais fáceis de libertando a concentração do programador
(Linguagens
compreender e para o produto final.
Declarativas e
de programar do
Linguagens Exemplos:
que as
Aplicativas) SQL, MATLAB, Clipper, Dbase,…
linguagens de
baixo nível.
5.ª geração Linguagens que têm a capacidade de deduzir,
(Linguagens inferir e extrair conclusões a partir de
orientadas à informação contida em bases de dados.
Inteligência Exemplo:
Artificial) LISP, Prolog,…
Conceitos (cont.)
Como sistema de escrita, uma linguagem de programação é
composta por:
uma terminologia ou semântica – conjunto de termos,
palavras e sinais, que assumem determinados significados
para o processador (palavras chave)
um conjunto de regras ou sintaxe – estipulam o modo
correto de utilizar os termos da linguagem para formular
instruções válidas para a máquina
Conceitos (cont.)
Linha de fluxo
Processamento interno
Símbolos utilizados nos fluxogramas (cont.)
Estrutura de decisão/comparação
Seleção múltipla
Conector
Subalgoritmo / sub-rotina
Exemplo
Início
Obter a área de um
retângulo
Ler (comp, larg)
Escrever (area)
Fim
Pseudocódigo
1º) Início
2º) Ler os dois números reais
3º) Efetuar o cálculo da soma dos dois números reais
4º) Escrever o resultado da soma
5º) Fim.
ALGORITMOS: SOMA DE DOIS NÚMEROS REAIS
Fluxograma Pseudocódigo
Início Algoritmo soma_2;
Fim
Fases de construção de um algoritmo
Algoritmo arearectangulo
Variáveis area, comp, larg : Inteiros
Início
Ler (comp, larg)
area ← comp * larg
Escrever (area)
Fim
Operações elementares
Operadores aritméticos
Operador Operação
+ Adição
- Subtração
* Multiplicação
/ Divisão
MOD Resto da divisão inteira
DIV Divisão inteira
Operações elementares (cont.)
Operadores relacionais
Operador Operação
= Igualdade
< Menor do que
> Maior do que
<= Menor do que ou igual a
>= Maior do que ou igual a
<> Diferente
Operações elementares (cont.)
Operadores lógicos
Operador Operação
AND Conjunção
OR Disjunção
NOT Negação
Operações elementares (cont.)
Operadores lógicos (cont.)
And V F Or V F
V V F V V V
F F F F V F
Not
V F
F V
Operações elementares (cont.)
Ordem de prioridade dos operadores em geral
Maior
Operadores
A utilização de NOT
parênteses
* / DIV MOD AND
permite alterar
a ordem de
+ - OR
prioridades.
= < > <= >= <>
Menor
Expressões
As expressões podem ser
numéricas – utilizam operadores aritméticos
booleanas – utilizam operadores relacionais e/ou lógicos,
cujo resultado será verdadeiro (true) ou falso (false)
Exemplo:
10 + 5 > 10 And 10 < 10 - 5
15 > 10 And 10 < 5
V And F
F
Exercício 4
Considerando as seguintes expressões numéricas e supondo
que p=3 e q=2, determine quais os valores de cada uma das
seguintes expressões:
a) p+q*5
b) (p+q)*5
c) p+5*q/2
d) p MOD q
e) 7 DIV p
Exercício 5
Determine os valores lógicos de cada uma das seguintes
expressões, supondo que x=10 e y=5 (apresente os cálculos que lhe
permitem chegar aos resultados que indicar):
Numéricos
inteiros
reais
Lógico ou booleano
Tipos de dados (cont.)
Dados estruturados
Em pseudocódigo
Se <condição> Então
<bloco de instruções>
[ Senão
<bloco de instruções> ]
FimSe
Estruturas de decisão (cont.)
Em fluxograma
SE Falso
Condição
Verdade
ENTÃO SENÃO
Bloco de Bloco de
instruções instruções
Exemplo 1 Início
Ler (Nota)
Verdade
Se (Nota >= 10) Então
Escrever (“Aprovado”)
Escrever (“Aprovado”)
FimSe
Escrever (“Escola”)
Fim Escrever(“Escola”)
Fim
Exercício 11
Elaborar o fluxograma e o pseudocódigo para
apresentar a mensagem “Dividir a turma” caso o
número de alunos, a introduzir pelo utilizador, seja
superior a 20.
Exemplo 2 Início
Escrever (“Reprovado”)
FimSe
Escrever (“Escola”)
Escrever(“Escola”)
Fim
Fim
Exemplo 3
Algoritmo classifica3
Variáveis Nota: Inteiro
Início
Escrever (“Qual a nota do exame?”)
Ler (Nota)
Se (Nota >= 0) E (Nota <= 20) Então
Se (Nota >= 10) Então
Escrever (“Aprovado”)
Senão
Escrever (“Reprovado”)
FimSe
Senão Escrever (“Nota inválida.”)
FimSe
Escrever (“Escola”)
Fim
Exercício 12
Elaborar o pseudocódigo para obter o maior de dois
números inteiros introduzidos pelo utilizador.
Exercício 13
Construa um algoritmo, em pseudocódigo, que permita ler um
número inteiro.
Se o número introduzido for igual a zero deve aparecer no
ecrã “ O número é zero”, se for maior que zero “O número é
positivo”, caso contrário “O número é negativo”.
Estruturas de seleção
As estruturas de seleção são controladas por variáveis ou
expressões que podem assumir uma multiplicidade de valores.
Em pseudocódigo
Selecionar Caso variável
<lista de valores> : <bloco de instruções>
<lista de valores> : <bloco de instruções>
…
[ Senão <bloco de instruções> ]
FimSelecionar
Estruturas de seleção (cont.)
Em fluxograma
Caso
variável
Algoritmo classifica
Ler (Nota)
Variável Nota: Inteiro
Início Caso
Nota =
Escrever (“Qual a nota numérica?”)
Ler (Nota) 0, 1, 2, 3, 4 Escrever (“Mau”)
Seleccionar Caso Nota
5, 6, 7, 8, 9 Escrever (“Medíocre”)
0, 1, 2, 3, 4 : Escrever (“Mau”)
5, 6, 7, 8, 9 : Escrever (“Medíocre”) 10, 11, 12, 13 Escrever (“Suficiente”)
10, 11, 12, 13 : Escrever (“Suficiente”) 14, 15, 16, 17 Escrever (“Bom”)
14, 15, 16, 17 : Escrever (“Bom”)
18, 19, 20 Escrever (“Muito Bom”)
18, 19, 20 : Escrever (“Muito Bom”)
Senão Escrever (“Nota inválida”) Se não for Escrever (“Nota inválida”)
nenhum dos
FimSeleccionar valores
anteriores
Fim
Fim
Exercício 14
Elaborar o pseudocódigo para apresentar a estação do ano
correspondente ao mês, em número inteiro, introduzido pelo
utilizador. Utilizar uma estrutura de seleção.
Considerar o seguinte:
1, 2, 3 – Inverno
4, 5, 6 – Primavera
7, 8, 9 – Verão
10, 11, 12 – Outono
Exercício 15
Elaborar o pseudocódigo que receba do utilizador um número
inteiro e uma opção de acordo com:
Caso a opção seja igual a 1 deve calcular e mostrar o
quadrado do número, caso seja igual a 2 deve calcular e
mostrar o dobro do número, caso seja igual a 3 deve calcular e
mostrar o triplo do número.
Caso a opção for diferente das opções 1,2 e 3 deve aparecer
no ecrã, “A opção introduzida é incorreta”.
Estruturas de repetição
Nas estruturas de repetição com a condição de controlo no final
do ciclo implica que as instruções nela indicadas serão
executadas pelo menos uma vez.
Em pseudocódigo
Repetir
<bloco de instruções>
Até que <condição>
Estruturas de repetição (cont.)
Em fluxograma
Bloco de acções
Falso
Condição
Verdade
Exemplo 1 Início
Início
Escrever (“Tabuada do 2”)
n1 Escrever (n, “ * 2 = “, n*2)
Repetir
n←n+1
Escrever (n, “ * 2 = “, n*2)
nn+1
Falso
n >10
Até que (n > 10)
Verdade
Fim
Fim
Exemplo 2 Início
Moedas← 10
Algoritmo jogo
Variáveis Moedas, Obtidas: Inteiros
Introduzir moeda
Início
Moedas 10 Moedas← Moedas -1
Em pseudocódigo
Enquanto <condição>
Fazer
<bloco de instruções>
FimFazer
Estruturas de repetição (cont.)
Em fluxograma
Falso
Condição
Verdade
Bloco de acções
Exemplo Início
Variáveis n: Inteiro
Início
Escrever (“Tabuada do 2”) n <=10
Falso
n1 Verdade
Enquanto (n <= 10)
Escrever (n, “ * 2 = “, n*2)
Fazer
Escrever (n, “ * 2 = “, n*2) n←n+1
nn+1
FimFazer
Fim Fim
Exercício 19
Elaborar o pseudocódigo e o fluxograma para somar os números
inteiros entre 3 e 12. Utilize uma estrutura de repetição com a
condição de controlo no início do ciclo.
Exercício 20
Elaborar o pseudocódigo e o fluxograma para somar os números
ímpares compreendidos entre 1 e 25. Utilize uma estrutura de
repetição com a condição de controlo no início do ciclo.
Estruturas de repetição (cont.)
Em pseudocódigo
Para Contador de <ValorInicial> Até <ValorFinal>
Fazer
<bloco de instruções>
FimFazer
Estruturas de repetição (cont.)
Em fluxograma
Contador ValorInicial
Falso
Contador <= ValorFinal
Verdade
Bloco de acções
Contador Contador + 1
Exemplo Início
Variáveis n: Inteiro
Início
Escrever (“Tabuada do 2”) n <=10
Falso