Você está na página 1de 27

ISCTEM

Curso de Engenharia Geológica e de Minas


Introdução à Computadores e Programação

Introdução a Programação -
Fluxogramas

Docente: Eng Hervé Muneza


dr. Jorge Mabutana

11.10.2022
Conteúdo da Aula

1. Algoritmos
1. Fluxogramas
2. Tipos de Fluxogramas
3. Fluxogramas Sequenciais
4. Fluxogramas com Ramificação
2. Teste de Mesa
Fluxogramas
Símbolos
Fluxogramas
“Uma imagem vale mais do que mil palavras”

Um fluxograma é um diagrama, escrito em uma


notação gráfica simples, usado para
representação visual de algoritmos.
• Pseudo-código -> Texto
• Fluxogrma -> Gráfico

O fluxograma tem a vantagem de permitir


visualizar rapidamente a estrutura de
programação utilizada.
Fluxogramas
Num fluxograma utiliza-se um conjunto de
blocos predefinidos.

Início/fim decisão

entrada/ saída
de dados

Expressões conexão
Fluxogramas
Símbolos – Inicio e Fim

• Podem ser circulos ou formas ovais

• Normalmente contém as palavras “Inicío” ou “Fim”

Início Fim
Fluxogramas
Símbolos – Entradas e Saidas

• Representa qualquer tipo de dado no fluxograma.

• Representa no início a entrada de dados e no fim a


saida de dados

A, B A
Ler A, B

Imprime A
Fluxogramas
Símbolos – Expressões / Operações

• Representados por retângulos

• Indicam uma tarefa a ser executada pelo programa

A <- 1 + X A <- A + B A <- B x C


Fluxogramas
Símbolos – Decisão

• Representados por losangos


• Normalmente contém uma pergunta do tipo Sim/Não
ou um teste de Verdadeiro/Falso

Não Não Não


B=0? B>A? A < -1

Sim Sim Sim


Fluxogramas
Símbolos – Setas

• Conectam 2 símbolos quaisquer;


• Definem a ordem das operações a serem realizadas e
o fluxo de controle

A<- X * C

Output A
Fluxogramas
Vantagens
• Padronização na representação;
• Permite descrever com maior rapidez um conjunto de
tarefas;
• Facilita a leitura e o entendimento de uma atividade;

Tipos de fluxogramas elementares:

•Fluxograma sequencial(linear);
•Fluxograma com ramificação:
• multi ramificação;
• repetitivo (ou cíclico).
C)
Fluxogramas
Identifique o tipo:
A)

B)
Fluxogramas
Fluxograma sequencial

Ex.1. Analisar o problema, elaborar o algoritmo, desenhar o


fluxograma e escrever o pseudo código para poder receber dois
valores inteiros e fornecer ao utilizador a sua soma.
início
Análise:
Entradas: dois valores inteiros
Saídas: valor da soma de dois valores val1, val2
Solução: soma <= val1 + val2

Pseudo código: soma  val1 + val2


Início
entrada(val1,val2)
soma
soma <= val1 + val2
saida(soma)
fim. fim
Fluxogramas
Fluxograma sequencial

Ex.2. Analisar o problema, elaborar o algoritmo, desenhar o


fluxograma e escrever o pseudo código para poder receber o
comprimento e a largura de um retângulo e imprime a área do
quadrado.
Fluxogramas
Fluxograma com ramificação
Ex.3. Introduzir do teclado um número e visualizar uma mensagem somente se
número introduzido for igual a zero.
Análise:
Entrada: um número
Saídas: uma mensagem se o número for igual a zero
Solução: comparar número com zero
início

Pseudo-código: num
Início
ler (num)
se num = 0 então sim "Numero é
num =0 igual a
visualizar ("O numero introduzido é igual a zero" ) zero
fim.
Não

fim
Fluxogramas
Fluxograma com ramificação
Ex.4. Receber do teclado dois números diferentes e determinar qual deles é
o maior, visualizar o comentário do tipo “1o valor introduzido é o maior”

Análise: início
Entradas: x,y
Saídas: uma mensagem
Solução: comparar x com y
x, y

Pseudo-código:
sim
Início x >y ““1º é o
ler (x,y) maior”
se x > y então Não
visualizar(“o 1º valor introduzido é o maior” )
“2º é o
senão
maior”
visualizar(“o 2º valor introduzido é o maior”)
fim.

fim
Fluxogramas
Fluxograma com ramificação
Ex.5. Entre dois valores introduzidos determinar o maior (prever a situação
de valores serem iguais). início
Análise:
Entradas: x,y
x, y
Saídas: uma mensagem
Solução: comparar x com y
x=y sim
“são
iguais”
Pseudo-código:
Não “1º é o
Início “2º é o x>y sim
ler (x,y) maior” maior”
se x = y então
visualizar (“Os valores introduzidos são iguais”)
senão
se x > y então fim
visualizar (“o 1º valor introduzido é o maior”)
senão
visualizar (“o 2º valor introduzido é o maior”)
fim.
Fluxogramas
Fluxograma com ramificação

Ex.6. Analisar o problema, elaborar o algoritmo, desenhar o fluxograma e


escrever o pseudo código para poder receber um número e indique se o
número é par ou impar.
Fluxogramas
Fluxograma repetitivo
Ex.7. Supomos que pretende-se modificar o algoritmo do ex.1) de forma a
permitir o processamento de cálculo de soma de dois números várias vezes.

Neste caso temos que no fim do algoritmo perguntar se utilizador pretende


introduzir outros dois números. No caso “sim” devemos voltar para o bloco de
leitura de dados, no caso “não”, terminar.
início
Pseudo código:
Início
fazer (ou repetir) val1,val2
início
ler (val1,val2)
somaval1 + val2
soma <- val1 + val2
visualizar (soma)
fim soma
enquanto (resposta = ‘ S’)
fim.
Continuar: S/N?

fim
Fluxogramas
Fluxograma repetitivo
Ex.8. Caso pretender saber o número de vezes que os dados foram
introduzidos, temos que adicionar mais uma variável.
Esta variável (chamamos por contador) será inicializada com o valor zero
(cont <- 0) e na medida que os dados serão introduzidos, o contador vai
incrementar em 1 (cont+1).
início
Pseudo código:
Início
cont  0
cont <- 0
fazer (ou repetir) val1,val2
início
ler (val1,val2) soma val1 + val2
soma <- val1 + val2
visualizar (soma) soma
cont <- cont+1
fim cont  cont + 1
enquanto (resposta = ‘ S’) Não
sim
visualizar (cont) Continuar: S/N?
fim.
cont

fim
Fluxogramas
Fluxograma com ramificação

Ex.9. Analisar o problema, elaborar o algoritmo, desenhar o fluxograma e


escrever o pseudo código para poder receber um número e calcule o
factorial ( Caso o número seja negativo o programa tem que imprimir a
seguinte mensagem “o número não pode ser negativo”).
Teste de Mesa
Teste de Mesa
• É uma técnica usada para testar algoritmos ou programas de
computador, com o intuito de verificar se há algum erro na logica
durante a execução do algoritmo ou programa.

• Ele também simula o fluxo de execução de uma parte de um


programa ou o programa todo.

• As declarações são executadas passo a passo, e os valores das


variáveis mudam conforme a declaração é executada.
Teste de Mesa
Para efectuar o teste de mesa de um algoritmos é necessário:

1. Identifique todas as variáveis no seu algoritmo;

2. Crie uma tabela onde a primeira coluna se chama "Passo”.


A partir disto, crie uma coluna para cada variável do
algoritmo;

• Na primeira linha da tabela, preencha a coluna "Passo" com


"Início“ e preencha cada coluna das variáveis com os respectivos
valores iniciais;

3. Percorra seu código linha a linha, preenchendo a tabela.

• A coluna "Passo" deverá ser incrementada a cada nova linha na


tabela;
• Pare quando o algoritmo finalizar ou após um número razoável
de resultados corretos obtidos;
Teste de Mesa
Ex10 : Elabore o teste de mesa do exemplo 9. O calculo do
factorial de um dado número.

1. Identifique todas as variáveis no seu algoritmo;

Variaveis: numero e resultado

2. Crie uma tabela onde a primeira coluna se chama "Passo“. A


partir disto, crie uma coluna para cada variável do algoritmo

Passo numero resultado


Início 0 1
Teste de Mesa
Ex10 : Elabore o teste de mesa do exemplo 9. O calculo do
factorial de um dado número.

3. Percorra seu código linha a linha, preenchendo a tabela.

Passo numero resultado


Início 0 1
1 3 1
2 3 1 *3 = 3
3 3-1=2 3
4 2 3*2 =6
5 2-1=1 6
6 1 6*1= 6
7 1-1=0 6
Dúvidas e Discussão

Você também pode gostar