24-04-2012
REVISÕES DA SESSÃO ANTERIOR
Fluxogramas
• Um fluxograma é uma forma padronizada e
eficaz para representar os passos lógicos de
um determinado processamento.
• Com os fluxogramas podemos definir uma
sequência de símbolos, com significado bem
definido, portanto, a sua principal função é a
de facilitar a visualização dos passos de um
processamento.
1
24-04-2012
Fluxograma
• Representação gráfica de um algoritmo.
Estrutura de Controlo
Uma estrutura (de controlo) é a unidade básica da lógica de
programação.
Qualquer programa pode ser construído através da combinação
de 3 estruturas básicas: sequência, selecção e repetição.
Entrada
Entrada
Entrada
Saída
Saída
Saída
2
24-04-2012
Fluxograma
Cálculo do zero da equação
ax+b=0
RESOLUÇÃO DE EXERCÍCIOS
3
24-04-2012
Exercício 1
Construa um
fluxograma que :
– Leia a cotação do
dólar
– Leia um valor em
dólares
– Converta esse
valor para Euros
– Mostre o
resultado
Exercício 1 - Resolução
4
24-04-2012
Exercício 2
Desenvolva um fluxograma que:
• Leia 4 (quatro) números
• Calcule o quadrado para cada um
• Some todos
• Mostre o resultado
Exercício 2 - Resolução
5
24-04-2012
Exercício 3
1. Construa um algoritmo para pagamento de
comissão de vendedores de peças, levando-se
em consideração que sua comissão será de 5%
do total da venda e que você tem os seguintes
dados:
–
–
–
–
Identificação do vendedor
Código da peça
Preço unitário da peça
Quantidade vendida
2. Construa o fluxograma do algoritmo anterior
Exercício 3 - Resolução
Constantes
COM: 0.05;
Variáveis
idVendedor, codPeca: char;
precoUnitario, quantVendida,
Inicio
Ler(idVendedor);
Ler(codPeca);
Ler(precoUnitario);
Ler(quantVendida);
precoTotal <- precoUnitario * quantVendida;
comissão <- precoTotal *
Escrever(precoTotal);
Fim
6
24-04-2012
Representações de algoritmos
• Linguagem Natural
Os algoritmos são expressos directamente em linguagem natural (e.g. o
português como no exemplo do bolo).
• Fluxograma (ou Diagrama de Fluxo)
Esta é uma representação gráfica que emprega formas geométricas
padronizadas para indicar as diversas acções e decisões que devem ser
executadas para resolver o problema.
• Pseudo-linguagem ou pseudocódigo
Emprega uma linguagem intermediária entre a
linguagem natural e uma linguagem de programação
para descrever os algoritmos.
PSEUDOCÓDIGO
7
24-04-2012
Pseudocódigo
• Os algoritmos são descritos numa linguagem
chamada pseudocódigo.
• Pseudocódigo é uma forma genérica de escrever
um algoritmo, utilizando uma linguagem simples
(nativa a quem o escreve, por forma a ser
entendido por qualquer pessoa) sem necessidade
de conhecer a sintaxe de nenhuma linguagem de
programação.
Pseudocódigo
O algoritmo deve ser fácil de se
interpretar e fácil de codificar. Ou seja, ele
deve ser o intermediário entre a linguagem
falada e a linguagem de programação.
8
24-04-2012
Regras
• Apesar das pseudolinguagens terem poucas regras existem
algumas que normalmente são usadas para facilitar o
entendimento entre os programadores.
• Vamos detalhar algumas delas.
– As palavras início e fim indicam onde começa e termina o
algoritmo.
– Os programadores podem incluir nos algoritmos explicações
que facilitem o entendimento do seu funcionamento.
• Estes comentários não são executados pelos
computadores e somente são lidos pelos programadores.
• Existem diversas maneiras de indicar que o texto no
algoritmo é apenas um comentário.
CONSTANTES, VARIÁVEIS E TIPO DE
DADOS
9
24-04-2012
Constantes, variáveis e tipo de
dados
• Os principais tipos de dados utilizados em
algoritmia e em programação são:
– Caracteres, cadeias de caracteres ou texto;
– Números (podendo estes serem de diferentes
tipos);
– Dados do tipo lógico ou booleano.
Cadeias de caracteres
• Existem dados que são do tipo texto ou
cadeias de caracteres (strings);
– Por exemplo “Hoje e dia 14.”
• Para este tipo de dados também se utiliza,
por vezes, a designação de dados
alfanuméricos – o que quer dizer que são
dados em que entram caracteres alfabéticos
ou letras e onde podem entrar também
algarismos.
10
24-04-2012
Dados numéricos
• E constituída pelos diferentes tipos de
números:
– Inteiros – por exemplo -10, -5, 0, 5, 10…
– Reais – por exemplo 1.5, 0, 2.5, -4.1; …
Nota: na programação e utilizado o “.” como sinal decimal.
Dados lógicos ou booleanos
• São utilizados com muita frequência em
algoritmia e programação;
• Este tipo de dados caracteriza-se por admitir
de cada vez apenas um entre dois resultados.
Verdadeiro(true, 1) ou falso(false, 0);
11
24-04-2012
Constantes e Variáveis
• Constante: é um dado que permanece inalterável
do inicio ao fim do algoritmo
• Variável: é um dado que pode sofrer alterações
de valor ao longo do algoritmo
• Identificador: é um nome que é associado (pelo
programador) a uma constante, a uma variável ou
outro tipo de elemento, em programação.
Constantes
• As constantes podem surgir:
– Sob a forma directa, ou seja, valores numéricos,
alfanuméricos,…
• Exemplos:
0.75; “Janeiro”;…
– Sob a forma de identificadores, por exemplo:
• Exemplos:
Taxa=0.16;
Nome = “Ana Matias”;
12
24-04-2012
Variáveis
• As variáveis surgem sempre designadas
através de identificadores e associadas a
determinado tipo de dados (inteiro, real,
string, booleano, etc)
– Exemplo:
• Idade : inteiro
A característica principal das variáveis e o facto
de poderem assumir diferentes valores ao
longo do algoritmo ou programa.
Instruções de atribuição
• São operações internas de um programa ou
algoritmo que atribuem valores às variáveis
– Exemplos:
• Nome ← “Joao Miguel”;
• Idade ← 16;
Nota: O sinal de atribuição na linguagem
algorítmica e ← mas, na linguagem C e =.
13
24-04-2012
EXERCÍCIOS
Exercício 1
Considere
as
seguintes
linhas
de
pseudocódigo:
a) Indique, passo a passo, quais os valores das
variáveis P e Q ao longo da sequência de
instruções. Indique também como serão
representados os dados na última
instrução.
14
24-04-2012
Exercício 2
Considere as seguintes linhas de
pseudocódigo:
• a) Indique passo a passo, quais
os valores das variáveis Soma e
Res ao longo da sequência,
supondo que os valores iniciais
são 4 e 5.
Escrita e representação de
instruções básicas
15
24-04-2012
Escrita e representação de
instruções básicas
• Chamam-se instruções de atribuição às operações
internas de um programa ou algoritmo que atribuem
valores às variáveis;
• Por exemplo:
– Nome <- “Ana Matias”;
• Indica que a variável Nome recebe a string ou cadeia de
caracteres “Ana Matias”;
– Custo <- 10;
• Indica que a variável Custo recebe o valor 10;
– Prex <- Custo *1.25;
• Indica que a variável Prex recebe o produto da variável Custo
por 1.25.
Escrita e representação de
instruções básicas
• Do lado esquerdo do sinal <- escreve-se o
Identificador da variável
• Do lado direito desse mesmo sinal escreve-se
o valor ou a expressão a atribuir à variável.
Nota: A instrução termina com um sinal de
ponto e vírgula(;).
16
24-04-2012
Instrução de input ou entrada de
dados
• Depois da palavra LER segue-se, dentro de
parênteses(), um ou mais dados, utilizando a
virgula (,) como separador.
• A instrução termina com um sinal de ponto e
vírgula(;).
Instrução de input ou entrada de
dados
• Uma operação de input por parte de um
programa ou em relação a um algoritmo é feita,
normalmente, através de instruções que
recorrem a variáveis.
• Ler (A);
– Indica que o utilizador terá que introduzir um valor
para a variável A.
• Ler (número, A);
– Indica que o utilizador terá que introduzir um valor
para a variável número e um outro para a variável A.
17
24-04-2012
Instrução de output ou saída de
dados
• Depois da palavra ESCREVER podem incluir-se (dentro
dos parêntesis) uma ou mais expressões,
identificadores, etc. tendo a vírgula como separador.
• A instrução termina com um sinal de ponto e
vírgula(;).
Instrução de output ou saída de
dados
• A saída de dados por parte de um programa ou
algoritmo pode ser feita em relação a diferentes
tipos de dispositivos, como: o monitor, uma
impressora, um disco, etc.
• Este tipo de operação, em termos de algoritmo,
pode ser representado por palavras como:
escrever, imprimir, etc.
– Escrever(“Olá Mundo”);
• Será escrito no monitor Olá Mundo.
– Escrever(“Total =“, total);
• Será escrito no monitor Total= seguido do valor que a variável total
tiver nessa altura da instrução.
18
24-04-2012
Classificação das estruturas de
controlo
• Num algoritmo ou programa é muitas vezes
necessário:
– Jogar com determinadas condições, para decidir
se se deve executar uma ou outra acção ou acções
– neste caso, teremos instruções ou estruturas de
decisão ou de selecção.
– Repetir uma série de instruções um determinado
número de vezes ou enquanto se verificar uma
certa condição – neste caso, teremos estruturas
de repetição ou ciclos.
Classificação das estruturas de
controlo
19
24-04-2012
Estruturas de Decisão
Estruturas de Decisão
• Existe a possibilidade de haver dois caminhos
na estrutura de decisão, consoante a
expressão lógica ser Verdadeira ou falsa.
• A decisão SENÃO é opcional, pode existir ou
não.
20
24-04-2012
Estruturas de Decisão
• A estrutura de decisão com base numa condição
costuma ser indicada como estrutura SE ou
então SE…ENTÃO…SENÃO…
• Permite decidir sobre executar ou não uma
determinada acção ou seleccionar entre duas
alternativas possíveis.
• A decisão é tomada com base numa condição ou
expressão lógica.
Estruturas de Decisão
Esta condição ou expressão lógica surge imediatamente a
seguir à palavra SE.
– Verdadeiro (V) – será executada a acção ou bloco de acções
indicadas a seguir à palavra ENTÃO
– Falso (F)
• É executada a acção ou bloco de acções que são indicadas após a
• palavra SENÃO;
• Não é feito mais nada dentro da estrutura de decisão e passa-se à
• próxima acção após essa estrutura.
• A palavra SENÃO é opcional.
21
24-04-2012
Estruturas de Decisão
Devido à parte opcional, SENÃO, existe duas variantes
desta estrutura:
• Decisão simples - Só é indicado um bloco de acções e
este só será executado se a condição de controlo dor
verdadeira; senão, não é executado nenhuma acção e
passa-se ao fim da estrutura, FIMSE.
• Decisão composta - Se a condição de controlo for falsa,
há um outro bloco de acções que deverá ser executado
antes de se atingir o fim da estrutura.
Estruturas de Decisão
Decisão Simples
22
24-04-2012
Estruturas de Decisão
Decisão Composta
Exercícios
1. Pretende-se elaborar um algoritmo que:
a) Escrever um programa para ler um número
inteiro e imprimir se ele é par ou ímpar
b) Escrever um programa que leia três números e
exiba o maior deles.
c) Leia as 3 notas de um aluno e calcule a média
final deste aluno. Considerar que a média é
ponderada e que o peso das notas é: 20%,30% e
50%, respetivamente.
23
24-04-2012
FICHA DE TRABALHO Nº1
24
Download

REVISÕES DA SESSÃO ANTERIOR Fluxogramas