SlideShare une entreprise Scribd logo
1  sur  61
Télécharger pour lire hors ligne
Disciplina: Constr. de Algoritmos e Prog. de Sistemas
Professor: Jeovane Reges
Caxias – MA
2016
ACULDADE DE CIÊNCIAS
E TECNOLOGIA DO
MARANHÃO
Link Drive
bit.ly/ads-algoritmos
2
3
Algoritmos
4
Controle de Fluxo
<Comandos de Decisões>
• Algoritmos
• Comandos de Decisões
• Introdução
• Os algoritmos vistos até então, realizam apenas
instruções básicas:
 São conhecidos como algoritmos sequenciais.
• Alguns problemas mais complexos exigem maior
controle sobre as suas operações.
• Esse controle é exercido com a utilização dos
comandos de controle de fluxo.
5
• Algoritmos
• Comandos de Decisões
• Introdução
• Os comandos de controle de fluxo, dividem-se:
 Comandos de decisões; e
 Comandos de repetições.
6
7
Comandos de Decisões
• Algoritmos
• Comandos de Decisões
• Introdução
• Comandos de decisões são também conhecidos
como comandos de seleções ou condicionais.
• Por condição entende-se qualquer "expressão"
que resulte em uma resposta do tipo verdadeiro
ou falso.
• Os comandos de decisões dividem-se em:
simples, encadeado ou composto.
8
Comando se
9
• Algoritmos
• Comandos de Decisões
• Comando se
• É a forma mais simples dos comandos de
decisões: se <expressão> entao.
• O critério de seleção é dado por uma expressão,
cujo valor deve ser um dado do tipo lógico.
• Se esse valor for verdadeiro, então as instruções
definidas dentro do comando são executadas;
caso contrário, segue execução do programa.
10
• Algoritmos
• Comandos de Decisões
• Comando se
 Exemplos:
11
Expressão Resultado
10 < 12
8 + 6
10 % 3 = 0
20 / 3
"5 > 3 && 15 < 20"
Logico
Inteiro
Logico
Real
Caractere
• Algoritmos
• Comandos de Decisões
• Comando se
 Sintaxe
12
se ([expressão]) entao
// Executado se a expressão for verdadeira
[bloco de comandos]
fimse
As instruções aqui definidas, só serão executada se o valor
declarado na expressão for VERDADEIRO.
A expressão passada no comando SE,
deve ser do tipo lógica, caso contrário
o código não executa.
13
Exemplo 01
14
Faça um algoritmo que dadas as duas
notas de aluno calcule a média das notas
e diga se ele está aprovado.
• Algoritmos
• Comandos de Decisões
 Critérios de aprovação da Facema
• Aprovado:
• A média deve ser maior ou igual a 7.0.
15
• Algoritmos
• Exemplo 01
• Solucionando o problema...
16
• Entrada:
• n1  8 // primeira nota
• n2  6.2 // segunda nota
• Solução:
• media  (n1 + n2)/2
• Se a media for maior ou igual a 7,0 entao o
aluno está aprovado.
• Saída:
• Aluno Aprovado
• Algoritmos
• Comandos de Decisões
• Exemplo: Algoritmo para calcular média aritmética
de um aluno e dizer se o mesmo foi aprovado.
17
algoritmo "Exemplo 01"
var
n1, n2, media: real
inicio
n1  8
n2  6.2
media  (n1 + n2) / 2
se (media >= 7) entao
escreval("Aluno aprovado!")
fimse
fimalgoritmo
• Algoritmos
• Comandos de Decisões
 Exemplo
18
Inicio
Fim
Aprovado
n1, n2
media ≥ 7?
F
V
media  (n1 + n2) / 2
19
Da mesma forma que o algoritmo tem
início e fim, o comando de decisão
também deve ser devidamente
inicializado e finalizado.
20
Problema I
Dado um número, informar se ele é
divisível por 2.
• Algoritmos
• Comandos de Decisões
 Resolução do Problema I
21
algoritmo "Problema 01"
var
numero: inteiro
inicio
escreva("Digite um valor: ")
leia(numero)
se (numero % 2 = 0) entao
escreval("Número divisível por 2")
fimse
fimalgoritmo
22
Comandos de Decisões
<Encadeados - CDE>
• Algoritmos
• Comandos de Decisões
• Encadeados
 Sintaxe
23
se ([expressão 1]) entao
se ([expressão 2]) entao
//Executado se ambas as condições forem verdadeiro
[bloco de comandos]
fimse
fimse
Se ambas as condições forem VERDADEIRAS, então as
instruções aqui definidas serão executada.
24
Problema II
Dado um número, informar se ele é
divisível por 2 e 3.
• Algoritmos
• Comandos de Decisões
 Resolução do Problema II {1}
25
algoritmo "Problema 02"
var
numero: inteiro
inicio
escreva("Digite um valor: ")
leia(numero)
se (numero % 2 = 0) entao
se (numero % 3 = 0) entao
escreval("Número divisível por 2 e 3")
fimse
fimse
fimalgoritmo
• Algoritmos
• Comandos de Decisões
 Resolução do Problema II {2}
26
algoritmo "Problema 02"
var
numero: inteiro
inicio
escreva("Digite um valor: ")
leia(numero)
se ((numero % 2 = 0) E (numero % 3 = 0)) entao
escreva("Número divisível por 2 e 3")
fimse
fimalgoritmo
• Algoritmos
• Comandos de Decisões
• Comando se
• Na execução do comando se a condição será
avaliada e:
 Se a condição for verdadeira, a sequência de
instruções será executada.
 Se a condição for falsa, a sequência de instruções
não será executada, e o programa continuará sua
execução a partir do final do comando fimse.
27
Comando senao
28
• Algoritmos
• Comandos de Decisões
• Comando senao
• As instruções definidas no comandos se são
executados quando uma determinada condição for
atendida.
• Se a condição não for atendida, o algoritmo segue
seu fluxo de execução natural.
• O comando SENAO, indica um segundo caminho a
ser seguido.
 Quando a condição pré-estabelecida não for
atendida 29
30
Se o comando se diz o que fazer quando a
condição é verdadeira, o comando senao
trata o que fazer quando a condição é falsa.
• Algoritmos
• Comandos de Decisões
• Comando senao
 Sintaxe:
31
se ([expressão]) entao
// Executado se a expressão do SE for verdadeira
[bloco de comandos 1]
senao
// Executado se a expressão do SE for falsa
[bloco de comandos 2]
fimse
Exemplo 02
32
Faça um algoritmo que dadas as duas notas
de aluno, calcule a média das notas e diga
se ele está aprovado ou reprovado.
• Algoritmos
• Comandos de Decisões
 Critérios de aprovação da Facema
• Aprovado:
• A média deve ser maior ou igual a 7.0.
• Reprovado:
• A média deve ser menor do 7.0.
33
• Algoritmos
• Exemplo 02
• Solucionando o problema...
34
• Entrada:
• n1  8 // primeira nota
• n2  5.2 // segunda nota
• Solução:
• media  (n1 + n2)/2
• Se a media for maior ou igual a 7.0 entao o
aluno está aprovado.
• Senao está reprovado.
• Saída:
• Aluno Aprovado
• Aluno Reprovado
• Algoritmos
• Comandos de Decisões
 Exemplo:
35
algoritmo "Exemplo 02"
var
n1, n2, media: real
inicio
n1  8
n2  5.2
media  (n1 + n2) / 2
se (media >= 7) entao
escreva("Aluno Aprovado!")
senao
escreva("Aluno Reprovado!")
fimse
fimalgoritmo
• Algoritmos
• Comandos de Decisões
 Exemplo
36
Inicio
Fim
Aprovado
n1, n2
media ≥ 7?
F V
media  (n1 + n2) / 2
Reprovado
37
Problema III
Dado um número, informar se ele é
ou não múltiplo de 2.
• Algoritmos
• Comandos de Decisões
 Resolução do Problema III
38
algoritmo "Problema 03"
var
numero: inteiro
inicio
escreva("Digite um valor: ")
leia(numero)
se (numero % 2 = 0) entao
escreva("Número múltiplo de 2")
senao
escreva("Não é múltiplo de 2")
fimse
fimalgoritmo
39
Problema IV
Faça um algoritmo que dados dois
números, apresente o maior deles.
• Algoritmos
• Comandos de Decisões
 Resolução do Problema IV
40
algoritmo "Problema 04"
var
n1, n2: real
inicio
n1  19
n2  14
se (n1 > n2) entao
escreva("Maior: ", n1)
senao
escreva("Maior: ", n2)
fimse
fimalgoritmo
41
Problema V
O banco Algoritmos não permite que seus
cliente façam empréstimos superior a 300% do seu
salário. Dado o valor do salário e do empréstimo
informar se o empréstimo é permitido ou não.
• Algoritmos
• Comandos de Decisões
 Resolução do Problema V
42
algoritmo "Problema 05"
var
sal, emprestimo, valor_max: real
inicio
sal  2300
emprestimo  600
valor_max  sal * 3.0
se (emprestimo < valor_max) entao
escreva("Empréstimo permitido!")
senao
escreva("Empréstimo não permitido!")
fimse
fimalgoritmo
• Algoritmos
• Comandos de Decisões
• Comando senao
• Antes, na execução do comando se, tínhamos:
 Se a condição fosse verdadeira, a primeira sequência
de instruções (bloco se) era executada.
 Caso contrário, a sequência de instruções não era
executada e o programa seguia o seu fluxo padrão.
• Na execução do comando senao temos:
 Se a condição for falsa, a segunda sequência de
instruções (bloco senao) será executada.
43
44
O comando senao é opcional, e sua
sequência de instruções "somente" será
executada se o valor da condição que está
sendo testada no comando se for FALSA.
Aninhamento Se’s
45
• Algoritmos
• Se’s aninhados
• Funcionamento:
• Em um aninhamento de Se’s, o programa começa a
"testar" as condições começando pela condição 1.
• Se o resultado dessa condição for verdadeiro, o
programa executará o bloco de instruções
associados a ele.
• Do contrário, executará o bloco de comandos
associados ao comando senao se correspondente,
se ele existir.
46
• Algoritmos
• Comandos de Decisões
• Se’s aninhados
 Sintaxe:
47
se ([expressão 1]) entao
[bloco 1]
senao
se ([expressão 2]) entao
[bloco 2]
senão
[bloco 3]
fimse
fimse
Exemplo 03
48
Faça um algoritmo que dadas as duas notas
de aluno, calcule a média das notas e diga
se ele está aprovado, de final ou
reprovado.
• Algoritmos
• Comandos de Decisões
 Critérios de aprovação da Facema
• Aprovado:
• A média deve ser maior ou igual a 7.0.
• Reprovado:
• A média deve ser menor do 4.0.
• De final:
• A média deve ser menor do que 7.0 e maior
ou igual a 4.0.
49
• Algoritmos
• Exemplo 03
50
• Entrada:
• n1  8 // primeira nota
• n2  5.2 // segunda nota
• Solução:
• media  (n1 + n2)/2
• Se a media for maior ou igual a 7.0, entao o aluno
está aprovado.
• Senao se a média for menor do 7.0 e maior ou igual
a 4.0, entao o aluno está de final.
• Senao está reprovado.
• Saída:
• Aluno Aprovado
• Aluno de final
• Aluno Reprovado
Solucionandooproblema...
• Algoritmos
51
algoritmo "Exemplo 03"
var
n1, n2, media: real
inicio
n1  8
n2  5.2
media  (n1 + n2) / 2
se (media >= 7) entao
escreva("Aluno aprovado!")
senao
se ((media < 7) E (media >= 4)) entao
escreva("Aluno de final!")
senao
escreva("Aluno reprovado!")
fimse
fimse
fimalgoritmo
Exemplo03
• Algoritmos
• Comandos de Decisões
 Exemplo
52
Inicio
Fim
Aprovado
n1, n2
media ≥ 7?
F V
media  (n1 + n2) / 2
Reprovado
media < 4?
Final
VF
53
Não existe aninhamento de
senao’s.
se (cond1)
sequência de comandos;
senao
sequência de comandos;
senao //ERRO!
sequência de comandos;
54
Comandos de Decisões
<Múltipla Escolha – Escolha .. Caso>
• Algoritmos
• Comandos de Decisões
• Múltipla Escolha
• Nos comandos de decisões estudados, um
comando ou bloco de comandos é executado
quando uma determinada condição é atendida.
• Porém, existem problemas em que uma
expressão pode assumir quaisquer valores.
• Onde, para cada valor assumido, comandos
diferentes são executados.
55
• Algoritmos
• Comandos de Decisões
• Múltipla Escolha
 Sintaxe:
56
escolha([comando])
caso [opção 1]
[bloco 1]
caso [opção 2]
[bloco 2]
...
caso [opção n]
[bloco n]
outrocaso
[bloco]
fimescolha
• Algoritmos
• Comandos de Decisões
• Múltipla Escolha
• O [comando] pode ser qualquer expressão
válida.
• Este é avaliado e o seu valor resultante é
comparado com as opções distintas [opção 1],
[opção 2], ..., [opção n].
• Se o valor for diferente de todos os casos, então
o comando outrocaso é executado.
57
Exemplo 04
58
Faça um algoritmos que apresente um
menu para o usuário perguntando se
ele deseja:
1 – Ir à praia ou 2 – Ir ao cinema
• Algoritmos
 Resolução do problema :
59
algoritmo "Escolha Caso"
var
opcao: inteiro
inicio
escreval("Digite 1 para praia ou 2 para cinema")
leia(opcao)
escolha (opcao)
caso 1
escreva("Levar protetor solar")
caso 2
escreva("Comprar pipoca e coca-cola")
outrocaso
escreva("Leia um bom livro")
fimescolha
fimalgoritmo
Exemplo04
60
Problema VI
Dado o número de um mês exiba o
nome correspondente.
// Se for dado o número 1 deverá imprimir "Janeiro"
• Algoritmos
• Comandos de Decisões
61
algoritmo "Problema 06"
var
mes: inteiro
inicio
escreva("Digite o número de um mês: ")
leia(mes)
escolha (mes)
caso 1
escreval("Janeiro")
caso 2
escreval("Fevereiro")
outrocaso
escreva("Mês inválido")
fimescolha
fimalgoritmo
ResoluçãodoProblemaVI

Contenu connexe

Tendances

Processos threads senai
Processos threads senaiProcessos threads senai
Processos threads senaiCarlos Melo
 
Aula 13 - Matrizes
Aula 13 - MatrizesAula 13 - Matrizes
Aula 13 - MatrizesPacc UAB
 
Redes 1 introducao historico conceitos
Redes 1 introducao historico conceitosRedes 1 introducao historico conceitos
Redes 1 introducao historico conceitosMauro Pereira
 
Aula 1 aed - lógica de programação
Aula 1   aed - lógica de programaçãoAula 1   aed - lógica de programação
Aula 1 aed - lógica de programaçãoElaine Cecília Gatto
 
Lógica de Programação e Algoritmos
Lógica de Programação e AlgoritmosLógica de Programação e Algoritmos
Lógica de Programação e AlgoritmosMario Jorge Pereira
 
Descritiva Narrativa (Lógica de Programação)
Descritiva Narrativa (Lógica de Programação)Descritiva Narrativa (Lógica de Programação)
Descritiva Narrativa (Lógica de Programação)Gercélia Ramos
 
Sistemas Distribuídos - Computação Paralela - Introdução
Sistemas Distribuídos - Computação Paralela - IntroduçãoSistemas Distribuídos - Computação Paralela - Introdução
Sistemas Distribuídos - Computação Paralela - IntroduçãoAdriano Teixeira de Souza
 
Introdução à Programação
Introdução à ProgramaçãoIntrodução à Programação
Introdução à ProgramaçãoMario Sergio
 
Exercicios de estruturas condicionais - Lógica de Programação
Exercicios de estruturas condicionais - Lógica de ProgramaçãoExercicios de estruturas condicionais - Lógica de Programação
Exercicios de estruturas condicionais - Lógica de ProgramaçãoBruno Quaresma
 
Lista de exercicios vetores, matrizes, registros e sub-algoritmos
Lista de exercicios   vetores, matrizes, registros e sub-algoritmosLista de exercicios   vetores, matrizes, registros e sub-algoritmos
Lista de exercicios vetores, matrizes, registros e sub-algoritmosMauro Pereira
 
Arquitetura de um computador
Arquitetura de um computadorArquitetura de um computador
Arquitetura de um computadorFilipe Duarte
 
História e evolução do computadores
História e evolução do computadoresHistória e evolução do computadores
História e evolução do computadoresUEG
 
Lógica binária, potas lógicas e circuitos lógicos
Lógica binária, potas lógicas e circuitos lógicosLógica binária, potas lógicas e circuitos lógicos
Lógica binária, potas lógicas e circuitos lógicosMauro Pereira
 

Tendances (20)

Linguagem Assembly
Linguagem AssemblyLinguagem Assembly
Linguagem Assembly
 
Processos threads senai
Processos threads senaiProcessos threads senai
Processos threads senai
 
Aula 13 - Matrizes
Aula 13 - MatrizesAula 13 - Matrizes
Aula 13 - Matrizes
 
Redes 1 introducao historico conceitos
Redes 1 introducao historico conceitosRedes 1 introducao historico conceitos
Redes 1 introducao historico conceitos
 
Aula 1 aed - lógica de programação
Aula 1   aed - lógica de programaçãoAula 1   aed - lógica de programação
Aula 1 aed - lógica de programação
 
Lógica de Programação e Algoritmos
Lógica de Programação e AlgoritmosLógica de Programação e Algoritmos
Lógica de Programação e Algoritmos
 
Algoritmos: Variáveis e Constantes
Algoritmos: Variáveis e ConstantesAlgoritmos: Variáveis e Constantes
Algoritmos: Variáveis e Constantes
 
Aula 07 - Visualg e Pseudocódigo
Aula 07 - Visualg e PseudocódigoAula 07 - Visualg e Pseudocódigo
Aula 07 - Visualg e Pseudocódigo
 
Algoritmo 06 - Array e Matrizes
Algoritmo 06 - Array e MatrizesAlgoritmo 06 - Array e Matrizes
Algoritmo 06 - Array e Matrizes
 
Descritiva Narrativa (Lógica de Programação)
Descritiva Narrativa (Lógica de Programação)Descritiva Narrativa (Lógica de Programação)
Descritiva Narrativa (Lógica de Programação)
 
Visualg
VisualgVisualg
Visualg
 
Sistemas Distribuídos - Computação Paralela - Introdução
Sistemas Distribuídos - Computação Paralela - IntroduçãoSistemas Distribuídos - Computação Paralela - Introdução
Sistemas Distribuídos - Computação Paralela - Introdução
 
Logica de Programacao
Logica de ProgramacaoLogica de Programacao
Logica de Programacao
 
Introdução à Programação
Introdução à ProgramaçãoIntrodução à Programação
Introdução à Programação
 
HTML/CSS Patterns
HTML/CSS PatternsHTML/CSS Patterns
HTML/CSS Patterns
 
Exercicios de estruturas condicionais - Lógica de Programação
Exercicios de estruturas condicionais - Lógica de ProgramaçãoExercicios de estruturas condicionais - Lógica de Programação
Exercicios de estruturas condicionais - Lógica de Programação
 
Lista de exercicios vetores, matrizes, registros e sub-algoritmos
Lista de exercicios   vetores, matrizes, registros e sub-algoritmosLista de exercicios   vetores, matrizes, registros e sub-algoritmos
Lista de exercicios vetores, matrizes, registros e sub-algoritmos
 
Arquitetura de um computador
Arquitetura de um computadorArquitetura de um computador
Arquitetura de um computador
 
História e evolução do computadores
História e evolução do computadoresHistória e evolução do computadores
História e evolução do computadores
 
Lógica binária, potas lógicas e circuitos lógicos
Lógica binária, potas lógicas e circuitos lógicosLógica binária, potas lógicas e circuitos lógicos
Lógica binária, potas lógicas e circuitos lógicos
 

En vedette

Lista de Exercícios Algoritmo Semana 04
Lista de Exercícios Algoritmo Semana 04Lista de Exercícios Algoritmo Semana 04
Lista de Exercícios Algoritmo Semana 04Eder Samaniego
 
Banco de Dados 01 - Semana 02
Banco de Dados 01 - Semana 02 Banco de Dados 01 - Semana 02
Banco de Dados 01 - Semana 02 Eder Samaniego
 
Visualg primeira interação
Visualg   primeira interaçãoVisualg   primeira interação
Visualg primeira interaçãoHumberto Cepep
 
Algoritmos 01 - Semana 07 - Exercícios Múltipla Escolha
Algoritmos 01 - Semana 07 - Exercícios Múltipla EscolhaAlgoritmos 01 - Semana 07 - Exercícios Múltipla Escolha
Algoritmos 01 - Semana 07 - Exercícios Múltipla EscolhaEder Samaniego
 
Algoritmo 01 - Semana 01
Algoritmo 01 - Semana 01Algoritmo 01 - Semana 01
Algoritmo 01 - Semana 01Eder Samaniego
 
Lógica de programação com visu alg
Lógica de programação com visu algLógica de programação com visu alg
Lógica de programação com visu algLeandro Santos
 
Algoritmos 01 - Semana 03 - Exercícios de Leitura e Atribuição
Algoritmos 01 - Semana 03  - Exercícios de Leitura e AtribuiçãoAlgoritmos 01 - Semana 03  - Exercícios de Leitura e Atribuição
Algoritmos 01 - Semana 03 - Exercícios de Leitura e AtribuiçãoEder Samaniego
 
Semana 05 - Estruturas Condicionais - Exercícios
Semana 05   - Estruturas Condicionais - ExercíciosSemana 05   - Estruturas Condicionais - Exercícios
Semana 05 - Estruturas Condicionais - ExercíciosEder Samaniego
 
Algoritmos 01 - Semana 08 - Estruturas de repetição
Algoritmos 01 - Semana 08 - Estruturas de repetiçãoAlgoritmos 01 - Semana 08 - Estruturas de repetição
Algoritmos 01 - Semana 08 - Estruturas de repetiçãoEder Samaniego
 
Semana 01 - Lista de Exercícios
Semana 01 - Lista de ExercíciosSemana 01 - Lista de Exercícios
Semana 01 - Lista de ExercíciosEder Samaniego
 
Algoritmos 1 - Semana 2
Algoritmos 1 - Semana 2Algoritmos 1 - Semana 2
Algoritmos 1 - Semana 2Eder Samaniego
 

En vedette (20)

Construcao de Algoritmos - Aula 02
Construcao de Algoritmos - Aula 02Construcao de Algoritmos - Aula 02
Construcao de Algoritmos - Aula 02
 
Construcao de Algoritmos - Aula 10
Construcao de Algoritmos - Aula 10Construcao de Algoritmos - Aula 10
Construcao de Algoritmos - Aula 10
 
Construcao de Algoritmos - Aula 01
Construcao de Algoritmos - Aula 01Construcao de Algoritmos - Aula 01
Construcao de Algoritmos - Aula 01
 
Construcao de Algoritmos - Aula 12
Construcao de Algoritmos - Aula 12Construcao de Algoritmos - Aula 12
Construcao de Algoritmos - Aula 12
 
Lista de Exercícios Algoritmo Semana 04
Lista de Exercícios Algoritmo Semana 04Lista de Exercícios Algoritmo Semana 04
Lista de Exercícios Algoritmo Semana 04
 
Banco de Dados 01 - Semana 02
Banco de Dados 01 - Semana 02 Banco de Dados 01 - Semana 02
Banco de Dados 01 - Semana 02
 
Construcao de Algoritmos - Aula 09
Construcao de Algoritmos - Aula 09Construcao de Algoritmos - Aula 09
Construcao de Algoritmos - Aula 09
 
Construcao de Algoritmos - Aula 11
Construcao de Algoritmos - Aula 11Construcao de Algoritmos - Aula 11
Construcao de Algoritmos - Aula 11
 
Visualg primeira interação
Visualg   primeira interaçãoVisualg   primeira interação
Visualg primeira interação
 
Construcao de Algoritmos - Aula 13
Construcao de Algoritmos - Aula 13Construcao de Algoritmos - Aula 13
Construcao de Algoritmos - Aula 13
 
Construcao de Algoritmos - Aula 03
Construcao de Algoritmos - Aula 03Construcao de Algoritmos - Aula 03
Construcao de Algoritmos - Aula 03
 
Algoritmos 01 - Semana 07 - Exercícios Múltipla Escolha
Algoritmos 01 - Semana 07 - Exercícios Múltipla EscolhaAlgoritmos 01 - Semana 07 - Exercícios Múltipla Escolha
Algoritmos 01 - Semana 07 - Exercícios Múltipla Escolha
 
Construcao de Algoritmos - Aula 08
Construcao de Algoritmos - Aula 08Construcao de Algoritmos - Aula 08
Construcao de Algoritmos - Aula 08
 
Algoritmo 01 - Semana 01
Algoritmo 01 - Semana 01Algoritmo 01 - Semana 01
Algoritmo 01 - Semana 01
 
Lógica de programação com visu alg
Lógica de programação com visu algLógica de programação com visu alg
Lógica de programação com visu alg
 
Algoritmos 01 - Semana 03 - Exercícios de Leitura e Atribuição
Algoritmos 01 - Semana 03  - Exercícios de Leitura e AtribuiçãoAlgoritmos 01 - Semana 03  - Exercícios de Leitura e Atribuição
Algoritmos 01 - Semana 03 - Exercícios de Leitura e Atribuição
 
Semana 05 - Estruturas Condicionais - Exercícios
Semana 05   - Estruturas Condicionais - ExercíciosSemana 05   - Estruturas Condicionais - Exercícios
Semana 05 - Estruturas Condicionais - Exercícios
 
Algoritmos 01 - Semana 08 - Estruturas de repetição
Algoritmos 01 - Semana 08 - Estruturas de repetiçãoAlgoritmos 01 - Semana 08 - Estruturas de repetição
Algoritmos 01 - Semana 08 - Estruturas de repetição
 
Semana 01 - Lista de Exercícios
Semana 01 - Lista de ExercíciosSemana 01 - Lista de Exercícios
Semana 01 - Lista de Exercícios
 
Algoritmos 1 - Semana 2
Algoritmos 1 - Semana 2Algoritmos 1 - Semana 2
Algoritmos 1 - Semana 2
 

Similaire à Construcao de Algoritmos - Aula 06

Introdução - Algoritmos
Introdução - AlgoritmosIntrodução - Algoritmos
Introdução - AlgoritmosPsLucas
 
Semana 04 Estruturas Condicionais
Semana 04   Estruturas CondicionaisSemana 04   Estruturas Condicionais
Semana 04 Estruturas CondicionaisEder Samaniego
 
Algoritmos aula boa
Algoritmos aula boaAlgoritmos aula boa
Algoritmos aula boamorganavalon
 
mod2-mecanismos
mod2-mecanismosmod2-mecanismos
mod2-mecanismosdiogoa21
 
Instrucoes_Algoritmicas.pptx
Instrucoes_Algoritmicas.pptxInstrucoes_Algoritmicas.pptx
Instrucoes_Algoritmicas.pptxGustavoMaciel67
 
Aula 10 - Comando de Decisão Múltipla e Comandos de Repetição
Aula 10 - Comando de Decisão Múltipla e Comandos de RepetiçãoAula 10 - Comando de Decisão Múltipla e Comandos de Repetição
Aula 10 - Comando de Decisão Múltipla e Comandos de RepetiçãoAndré Constantino da Silva
 
Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais...
Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais...Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais...
Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais...André Constantino da Silva
 
Algoritmia (Conceitos)
Algoritmia (Conceitos)Algoritmia (Conceitos)
Algoritmia (Conceitos)Sandro Lopes
 
Estratégias e Técnicas de Testes - Parte 2
Estratégias e Técnicas de Testes - Parte 2Estratégias e Técnicas de Testes - Parte 2
Estratégias e Técnicas de Testes - Parte 2Lorena Caldas
 
Analytics - Data Science - Arvores de decisao
Analytics - Data Science - Arvores de decisaoAnalytics - Data Science - Arvores de decisao
Analytics - Data Science - Arvores de decisaoVitor Nunes
 

Similaire à Construcao de Algoritmos - Aula 06 (20)

Introdução - Algoritmos
Introdução - AlgoritmosIntrodução - Algoritmos
Introdução - Algoritmos
 
Ap algoritmosglauco
Ap algoritmosglaucoAp algoritmosglauco
Ap algoritmosglauco
 
Aula04
Aula04Aula04
Aula04
 
Aula 3-lógica.pptx
Aula 3-lógica.pptxAula 3-lógica.pptx
Aula 3-lógica.pptx
 
Semana 04 Estruturas Condicionais
Semana 04   Estruturas CondicionaisSemana 04   Estruturas Condicionais
Semana 04 Estruturas Condicionais
 
Cálculo numérico
Cálculo numéricoCálculo numérico
Cálculo numérico
 
Algoritmos aula boa
Algoritmos aula boaAlgoritmos aula boa
Algoritmos aula boa
 
mod2-mecanismos
mod2-mecanismosmod2-mecanismos
mod2-mecanismos
 
Lógica de programação
Lógica de programaçãoLógica de programação
Lógica de programação
 
Instrucoes_Algoritmicas.pptx
Instrucoes_Algoritmicas.pptxInstrucoes_Algoritmicas.pptx
Instrucoes_Algoritmicas.pptx
 
Aula 10 - Comando de Decisão Múltipla e Comandos de Repetição
Aula 10 - Comando de Decisão Múltipla e Comandos de RepetiçãoAula 10 - Comando de Decisão Múltipla e Comandos de Repetição
Aula 10 - Comando de Decisão Múltipla e Comandos de Repetição
 
0001
00010001
0001
 
000003 complexidade
000003 complexidade000003 complexidade
000003 complexidade
 
Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais...
Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais...Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais...
Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais...
 
Algoritmia (Conceitos)
Algoritmia (Conceitos)Algoritmia (Conceitos)
Algoritmia (Conceitos)
 
Estratégias e Técnicas de Testes - Parte 2
Estratégias e Técnicas de Testes - Parte 2Estratégias e Técnicas de Testes - Parte 2
Estratégias e Técnicas de Testes - Parte 2
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Aula algoritmo
Aula algoritmoAula algoritmo
Aula algoritmo
 
Pa mat5-cc-2016
Pa mat5-cc-2016Pa mat5-cc-2016
Pa mat5-cc-2016
 
Analytics - Data Science - Arvores de decisao
Analytics - Data Science - Arvores de decisaoAnalytics - Data Science - Arvores de decisao
Analytics - Data Science - Arvores de decisao
 

Dernier

ARTE BARROCA E ROCOCO BRASILEIRO-min.pdf
ARTE BARROCA E ROCOCO BRASILEIRO-min.pdfARTE BARROCA E ROCOCO BRASILEIRO-min.pdf
ARTE BARROCA E ROCOCO BRASILEIRO-min.pdfItaloAtsoc
 
AS REBELIÕES NA AMERICA IBERICA (Prof. Francisco Leite)
AS REBELIÕES NA AMERICA IBERICA (Prof. Francisco Leite)AS REBELIÕES NA AMERICA IBERICA (Prof. Francisco Leite)
AS REBELIÕES NA AMERICA IBERICA (Prof. Francisco Leite)profesfrancleite
 
Aula 6 - O Imperialismo e seu discurso civilizatório.pptx
Aula 6 - O Imperialismo e seu discurso civilizatório.pptxAula 6 - O Imperialismo e seu discurso civilizatório.pptx
Aula 6 - O Imperialismo e seu discurso civilizatório.pptxMarceloDosSantosSoar3
 
Trabalho DAC História 25 de Abril de 1974
Trabalho DAC História 25 de Abril de 1974Trabalho DAC História 25 de Abril de 1974
Trabalho DAC História 25 de Abril de 1974AnaRitaFreitas7
 
Ressonancia_magnetica_basica_slide_da_net.pptx
Ressonancia_magnetica_basica_slide_da_net.pptxRessonancia_magnetica_basica_slide_da_net.pptx
Ressonancia_magnetica_basica_slide_da_net.pptxPatriciaFarias81
 
PROJETO DE EXTENSÃO - SEGURANÇA, INOVAÇÃO E SUSTENTABILIDADE PARA O BEM COMUM...
PROJETO DE EXTENSÃO - SEGURANÇA, INOVAÇÃO E SUSTENTABILIDADE PARA O BEM COMUM...PROJETO DE EXTENSÃO - SEGURANÇA, INOVAÇÃO E SUSTENTABILIDADE PARA O BEM COMUM...
PROJETO DE EXTENSÃO - SEGURANÇA, INOVAÇÃO E SUSTENTABILIDADE PARA O BEM COMUM...Colaborar Educacional
 
autismo conhecer.pptx, Conhecer para entender
autismo conhecer.pptx, Conhecer para entenderautismo conhecer.pptx, Conhecer para entender
autismo conhecer.pptx, Conhecer para entenderLucliaResende1
 
Termo de audiência de Mauro Cid na ìntegra
Termo de audiência de Mauro Cid na ìntegraTermo de audiência de Mauro Cid na ìntegra
Termo de audiência de Mauro Cid na ìntegrafernando846621
 
Slides Lição 1, CPAD, O Início da Caminhada, 2Tr24, Pr Henrique.pptx
Slides Lição 1, CPAD, O Início da Caminhada, 2Tr24, Pr Henrique.pptxSlides Lição 1, CPAD, O Início da Caminhada, 2Tr24, Pr Henrique.pptx
Slides Lição 1, CPAD, O Início da Caminhada, 2Tr24, Pr Henrique.pptxLuizHenriquedeAlmeid6
 
arte retrato de um povo - Expressão Cultural e Identidade Nacional
arte retrato de um povo - Expressão Cultural e Identidade Nacionalarte retrato de um povo - Expressão Cultural e Identidade Nacional
arte retrato de um povo - Expressão Cultural e Identidade Nacionalidicacia
 
Poder do convencimento,........... .
Poder do convencimento,...........         .Poder do convencimento,...........         .
Poder do convencimento,........... .WAGNERJESUSDACUNHA
 
Mês da Leitura - Agrupamento de Escolas de Vagos 2024.pdf
Mês da Leitura - Agrupamento de Escolas de Vagos 2024.pdfMês da Leitura - Agrupamento de Escolas de Vagos 2024.pdf
Mês da Leitura - Agrupamento de Escolas de Vagos 2024.pdfEscolaSecundria2
 
Poema sobre o mosquito Aedes aegipyti -
Poema sobre o mosquito Aedes aegipyti  -Poema sobre o mosquito Aedes aegipyti  -
Poema sobre o mosquito Aedes aegipyti -Mary Alvarenga
 
Cruzadinha da dengue - Mosquito Aedes aegypti
Cruzadinha da dengue - Mosquito Aedes aegyptiCruzadinha da dengue - Mosquito Aedes aegypti
Cruzadinha da dengue - Mosquito Aedes aegyptiMary Alvarenga
 
Peixeiras da Coruña. O Muro da Coruña. IES Monelos
Peixeiras da Coruña. O Muro da Coruña. IES MonelosPeixeiras da Coruña. O Muro da Coruña. IES Monelos
Peixeiras da Coruña. O Muro da Coruña. IES MonelosAgrela Elvixeo
 
FORMAÇÃO POVO BRASILEIRO atividade de história
FORMAÇÃO POVO BRASILEIRO atividade de históriaFORMAÇÃO POVO BRASILEIRO atividade de história
FORMAÇÃO POVO BRASILEIRO atividade de históriaBenigno Andrade Vieira
 

Dernier (20)

ARTE BARROCA E ROCOCO BRASILEIRO-min.pdf
ARTE BARROCA E ROCOCO BRASILEIRO-min.pdfARTE BARROCA E ROCOCO BRASILEIRO-min.pdf
ARTE BARROCA E ROCOCO BRASILEIRO-min.pdf
 
AS REBELIÕES NA AMERICA IBERICA (Prof. Francisco Leite)
AS REBELIÕES NA AMERICA IBERICA (Prof. Francisco Leite)AS REBELIÕES NA AMERICA IBERICA (Prof. Francisco Leite)
AS REBELIÕES NA AMERICA IBERICA (Prof. Francisco Leite)
 
Aula 6 - O Imperialismo e seu discurso civilizatório.pptx
Aula 6 - O Imperialismo e seu discurso civilizatório.pptxAula 6 - O Imperialismo e seu discurso civilizatório.pptx
Aula 6 - O Imperialismo e seu discurso civilizatório.pptx
 
Trabalho DAC História 25 de Abril de 1974
Trabalho DAC História 25 de Abril de 1974Trabalho DAC História 25 de Abril de 1974
Trabalho DAC História 25 de Abril de 1974
 
Ressonancia_magnetica_basica_slide_da_net.pptx
Ressonancia_magnetica_basica_slide_da_net.pptxRessonancia_magnetica_basica_slide_da_net.pptx
Ressonancia_magnetica_basica_slide_da_net.pptx
 
Abordagem 2. Análise temática (Severino, 2013)_PdfToPowerPoint.pdf
Abordagem 2. Análise temática (Severino, 2013)_PdfToPowerPoint.pdfAbordagem 2. Análise temática (Severino, 2013)_PdfToPowerPoint.pdf
Abordagem 2. Análise temática (Severino, 2013)_PdfToPowerPoint.pdf
 
PROJETO DE EXTENSÃO - SEGURANÇA, INOVAÇÃO E SUSTENTABILIDADE PARA O BEM COMUM...
PROJETO DE EXTENSÃO - SEGURANÇA, INOVAÇÃO E SUSTENTABILIDADE PARA O BEM COMUM...PROJETO DE EXTENSÃO - SEGURANÇA, INOVAÇÃO E SUSTENTABILIDADE PARA O BEM COMUM...
PROJETO DE EXTENSÃO - SEGURANÇA, INOVAÇÃO E SUSTENTABILIDADE PARA O BEM COMUM...
 
autismo conhecer.pptx, Conhecer para entender
autismo conhecer.pptx, Conhecer para entenderautismo conhecer.pptx, Conhecer para entender
autismo conhecer.pptx, Conhecer para entender
 
Termo de audiência de Mauro Cid na ìntegra
Termo de audiência de Mauro Cid na ìntegraTermo de audiência de Mauro Cid na ìntegra
Termo de audiência de Mauro Cid na ìntegra
 
Slides Lição 1, CPAD, O Início da Caminhada, 2Tr24, Pr Henrique.pptx
Slides Lição 1, CPAD, O Início da Caminhada, 2Tr24, Pr Henrique.pptxSlides Lição 1, CPAD, O Início da Caminhada, 2Tr24, Pr Henrique.pptx
Slides Lição 1, CPAD, O Início da Caminhada, 2Tr24, Pr Henrique.pptx
 
arte retrato de um povo - Expressão Cultural e Identidade Nacional
arte retrato de um povo - Expressão Cultural e Identidade Nacionalarte retrato de um povo - Expressão Cultural e Identidade Nacional
arte retrato de um povo - Expressão Cultural e Identidade Nacional
 
Poder do convencimento,........... .
Poder do convencimento,...........         .Poder do convencimento,...........         .
Poder do convencimento,........... .
 
Boletim informativo Contacto - março 2024
Boletim informativo Contacto - março 2024Boletim informativo Contacto - março 2024
Boletim informativo Contacto - março 2024
 
Mês da Leitura - Agrupamento de Escolas de Vagos 2024.pdf
Mês da Leitura - Agrupamento de Escolas de Vagos 2024.pdfMês da Leitura - Agrupamento de Escolas de Vagos 2024.pdf
Mês da Leitura - Agrupamento de Escolas de Vagos 2024.pdf
 
Poema sobre o mosquito Aedes aegipyti -
Poema sobre o mosquito Aedes aegipyti  -Poema sobre o mosquito Aedes aegipyti  -
Poema sobre o mosquito Aedes aegipyti -
 
Cruzadinha da dengue - Mosquito Aedes aegypti
Cruzadinha da dengue - Mosquito Aedes aegyptiCruzadinha da dengue - Mosquito Aedes aegypti
Cruzadinha da dengue - Mosquito Aedes aegypti
 
Peixeiras da Coruña. O Muro da Coruña. IES Monelos
Peixeiras da Coruña. O Muro da Coruña. IES MonelosPeixeiras da Coruña. O Muro da Coruña. IES Monelos
Peixeiras da Coruña. O Muro da Coruña. IES Monelos
 
Abordagem 1. Análise textual (Severino, 2013).pdf
Abordagem 1. Análise textual (Severino, 2013).pdfAbordagem 1. Análise textual (Severino, 2013).pdf
Abordagem 1. Análise textual (Severino, 2013).pdf
 
FORMAÇÃO POVO BRASILEIRO atividade de história
FORMAÇÃO POVO BRASILEIRO atividade de históriaFORMAÇÃO POVO BRASILEIRO atividade de história
FORMAÇÃO POVO BRASILEIRO atividade de história
 
Abordagem 3. Análise interpretativa (Severino, 2013)_PdfToPowerPoint.pdf
Abordagem 3. Análise interpretativa (Severino, 2013)_PdfToPowerPoint.pdfAbordagem 3. Análise interpretativa (Severino, 2013)_PdfToPowerPoint.pdf
Abordagem 3. Análise interpretativa (Severino, 2013)_PdfToPowerPoint.pdf
 

Construcao de Algoritmos - Aula 06

  • 1. Disciplina: Constr. de Algoritmos e Prog. de Sistemas Professor: Jeovane Reges Caxias – MA 2016 ACULDADE DE CIÊNCIAS E TECNOLOGIA DO MARANHÃO
  • 5. • Algoritmos • Comandos de Decisões • Introdução • Os algoritmos vistos até então, realizam apenas instruções básicas:  São conhecidos como algoritmos sequenciais. • Alguns problemas mais complexos exigem maior controle sobre as suas operações. • Esse controle é exercido com a utilização dos comandos de controle de fluxo. 5
  • 6. • Algoritmos • Comandos de Decisões • Introdução • Os comandos de controle de fluxo, dividem-se:  Comandos de decisões; e  Comandos de repetições. 6
  • 8. • Algoritmos • Comandos de Decisões • Introdução • Comandos de decisões são também conhecidos como comandos de seleções ou condicionais. • Por condição entende-se qualquer "expressão" que resulte em uma resposta do tipo verdadeiro ou falso. • Os comandos de decisões dividem-se em: simples, encadeado ou composto. 8
  • 10. • Algoritmos • Comandos de Decisões • Comando se • É a forma mais simples dos comandos de decisões: se <expressão> entao. • O critério de seleção é dado por uma expressão, cujo valor deve ser um dado do tipo lógico. • Se esse valor for verdadeiro, então as instruções definidas dentro do comando são executadas; caso contrário, segue execução do programa. 10
  • 11. • Algoritmos • Comandos de Decisões • Comando se  Exemplos: 11 Expressão Resultado 10 < 12 8 + 6 10 % 3 = 0 20 / 3 "5 > 3 && 15 < 20" Logico Inteiro Logico Real Caractere
  • 12. • Algoritmos • Comandos de Decisões • Comando se  Sintaxe 12 se ([expressão]) entao // Executado se a expressão for verdadeira [bloco de comandos] fimse As instruções aqui definidas, só serão executada se o valor declarado na expressão for VERDADEIRO.
  • 13. A expressão passada no comando SE, deve ser do tipo lógica, caso contrário o código não executa. 13
  • 14. Exemplo 01 14 Faça um algoritmo que dadas as duas notas de aluno calcule a média das notas e diga se ele está aprovado.
  • 15. • Algoritmos • Comandos de Decisões  Critérios de aprovação da Facema • Aprovado: • A média deve ser maior ou igual a 7.0. 15
  • 16. • Algoritmos • Exemplo 01 • Solucionando o problema... 16 • Entrada: • n1  8 // primeira nota • n2  6.2 // segunda nota • Solução: • media  (n1 + n2)/2 • Se a media for maior ou igual a 7,0 entao o aluno está aprovado. • Saída: • Aluno Aprovado
  • 17. • Algoritmos • Comandos de Decisões • Exemplo: Algoritmo para calcular média aritmética de um aluno e dizer se o mesmo foi aprovado. 17 algoritmo "Exemplo 01" var n1, n2, media: real inicio n1  8 n2  6.2 media  (n1 + n2) / 2 se (media >= 7) entao escreval("Aluno aprovado!") fimse fimalgoritmo
  • 18. • Algoritmos • Comandos de Decisões  Exemplo 18 Inicio Fim Aprovado n1, n2 media ≥ 7? F V media  (n1 + n2) / 2
  • 19. 19 Da mesma forma que o algoritmo tem início e fim, o comando de decisão também deve ser devidamente inicializado e finalizado.
  • 20. 20 Problema I Dado um número, informar se ele é divisível por 2.
  • 21. • Algoritmos • Comandos de Decisões  Resolução do Problema I 21 algoritmo "Problema 01" var numero: inteiro inicio escreva("Digite um valor: ") leia(numero) se (numero % 2 = 0) entao escreval("Número divisível por 2") fimse fimalgoritmo
  • 23. • Algoritmos • Comandos de Decisões • Encadeados  Sintaxe 23 se ([expressão 1]) entao se ([expressão 2]) entao //Executado se ambas as condições forem verdadeiro [bloco de comandos] fimse fimse Se ambas as condições forem VERDADEIRAS, então as instruções aqui definidas serão executada.
  • 24. 24 Problema II Dado um número, informar se ele é divisível por 2 e 3.
  • 25. • Algoritmos • Comandos de Decisões  Resolução do Problema II {1} 25 algoritmo "Problema 02" var numero: inteiro inicio escreva("Digite um valor: ") leia(numero) se (numero % 2 = 0) entao se (numero % 3 = 0) entao escreval("Número divisível por 2 e 3") fimse fimse fimalgoritmo
  • 26. • Algoritmos • Comandos de Decisões  Resolução do Problema II {2} 26 algoritmo "Problema 02" var numero: inteiro inicio escreva("Digite um valor: ") leia(numero) se ((numero % 2 = 0) E (numero % 3 = 0)) entao escreva("Número divisível por 2 e 3") fimse fimalgoritmo
  • 27. • Algoritmos • Comandos de Decisões • Comando se • Na execução do comando se a condição será avaliada e:  Se a condição for verdadeira, a sequência de instruções será executada.  Se a condição for falsa, a sequência de instruções não será executada, e o programa continuará sua execução a partir do final do comando fimse. 27
  • 29. • Algoritmos • Comandos de Decisões • Comando senao • As instruções definidas no comandos se são executados quando uma determinada condição for atendida. • Se a condição não for atendida, o algoritmo segue seu fluxo de execução natural. • O comando SENAO, indica um segundo caminho a ser seguido.  Quando a condição pré-estabelecida não for atendida 29
  • 30. 30 Se o comando se diz o que fazer quando a condição é verdadeira, o comando senao trata o que fazer quando a condição é falsa.
  • 31. • Algoritmos • Comandos de Decisões • Comando senao  Sintaxe: 31 se ([expressão]) entao // Executado se a expressão do SE for verdadeira [bloco de comandos 1] senao // Executado se a expressão do SE for falsa [bloco de comandos 2] fimse
  • 32. Exemplo 02 32 Faça um algoritmo que dadas as duas notas de aluno, calcule a média das notas e diga se ele está aprovado ou reprovado.
  • 33. • Algoritmos • Comandos de Decisões  Critérios de aprovação da Facema • Aprovado: • A média deve ser maior ou igual a 7.0. • Reprovado: • A média deve ser menor do 7.0. 33
  • 34. • Algoritmos • Exemplo 02 • Solucionando o problema... 34 • Entrada: • n1  8 // primeira nota • n2  5.2 // segunda nota • Solução: • media  (n1 + n2)/2 • Se a media for maior ou igual a 7.0 entao o aluno está aprovado. • Senao está reprovado. • Saída: • Aluno Aprovado • Aluno Reprovado
  • 35. • Algoritmos • Comandos de Decisões  Exemplo: 35 algoritmo "Exemplo 02" var n1, n2, media: real inicio n1  8 n2  5.2 media  (n1 + n2) / 2 se (media >= 7) entao escreva("Aluno Aprovado!") senao escreva("Aluno Reprovado!") fimse fimalgoritmo
  • 36. • Algoritmos • Comandos de Decisões  Exemplo 36 Inicio Fim Aprovado n1, n2 media ≥ 7? F V media  (n1 + n2) / 2 Reprovado
  • 37. 37 Problema III Dado um número, informar se ele é ou não múltiplo de 2.
  • 38. • Algoritmos • Comandos de Decisões  Resolução do Problema III 38 algoritmo "Problema 03" var numero: inteiro inicio escreva("Digite um valor: ") leia(numero) se (numero % 2 = 0) entao escreva("Número múltiplo de 2") senao escreva("Não é múltiplo de 2") fimse fimalgoritmo
  • 39. 39 Problema IV Faça um algoritmo que dados dois números, apresente o maior deles.
  • 40. • Algoritmos • Comandos de Decisões  Resolução do Problema IV 40 algoritmo "Problema 04" var n1, n2: real inicio n1  19 n2  14 se (n1 > n2) entao escreva("Maior: ", n1) senao escreva("Maior: ", n2) fimse fimalgoritmo
  • 41. 41 Problema V O banco Algoritmos não permite que seus cliente façam empréstimos superior a 300% do seu salário. Dado o valor do salário e do empréstimo informar se o empréstimo é permitido ou não.
  • 42. • Algoritmos • Comandos de Decisões  Resolução do Problema V 42 algoritmo "Problema 05" var sal, emprestimo, valor_max: real inicio sal  2300 emprestimo  600 valor_max  sal * 3.0 se (emprestimo < valor_max) entao escreva("Empréstimo permitido!") senao escreva("Empréstimo não permitido!") fimse fimalgoritmo
  • 43. • Algoritmos • Comandos de Decisões • Comando senao • Antes, na execução do comando se, tínhamos:  Se a condição fosse verdadeira, a primeira sequência de instruções (bloco se) era executada.  Caso contrário, a sequência de instruções não era executada e o programa seguia o seu fluxo padrão. • Na execução do comando senao temos:  Se a condição for falsa, a segunda sequência de instruções (bloco senao) será executada. 43
  • 44. 44 O comando senao é opcional, e sua sequência de instruções "somente" será executada se o valor da condição que está sendo testada no comando se for FALSA.
  • 46. • Algoritmos • Se’s aninhados • Funcionamento: • Em um aninhamento de Se’s, o programa começa a "testar" as condições começando pela condição 1. • Se o resultado dessa condição for verdadeiro, o programa executará o bloco de instruções associados a ele. • Do contrário, executará o bloco de comandos associados ao comando senao se correspondente, se ele existir. 46
  • 47. • Algoritmos • Comandos de Decisões • Se’s aninhados  Sintaxe: 47 se ([expressão 1]) entao [bloco 1] senao se ([expressão 2]) entao [bloco 2] senão [bloco 3] fimse fimse
  • 48. Exemplo 03 48 Faça um algoritmo que dadas as duas notas de aluno, calcule a média das notas e diga se ele está aprovado, de final ou reprovado.
  • 49. • Algoritmos • Comandos de Decisões  Critérios de aprovação da Facema • Aprovado: • A média deve ser maior ou igual a 7.0. • Reprovado: • A média deve ser menor do 4.0. • De final: • A média deve ser menor do que 7.0 e maior ou igual a 4.0. 49
  • 50. • Algoritmos • Exemplo 03 50 • Entrada: • n1  8 // primeira nota • n2  5.2 // segunda nota • Solução: • media  (n1 + n2)/2 • Se a media for maior ou igual a 7.0, entao o aluno está aprovado. • Senao se a média for menor do 7.0 e maior ou igual a 4.0, entao o aluno está de final. • Senao está reprovado. • Saída: • Aluno Aprovado • Aluno de final • Aluno Reprovado Solucionandooproblema...
  • 51. • Algoritmos 51 algoritmo "Exemplo 03" var n1, n2, media: real inicio n1  8 n2  5.2 media  (n1 + n2) / 2 se (media >= 7) entao escreva("Aluno aprovado!") senao se ((media < 7) E (media >= 4)) entao escreva("Aluno de final!") senao escreva("Aluno reprovado!") fimse fimse fimalgoritmo Exemplo03
  • 52. • Algoritmos • Comandos de Decisões  Exemplo 52 Inicio Fim Aprovado n1, n2 media ≥ 7? F V media  (n1 + n2) / 2 Reprovado media < 4? Final VF
  • 53. 53 Não existe aninhamento de senao’s. se (cond1) sequência de comandos; senao sequência de comandos; senao //ERRO! sequência de comandos;
  • 54. 54 Comandos de Decisões <Múltipla Escolha – Escolha .. Caso>
  • 55. • Algoritmos • Comandos de Decisões • Múltipla Escolha • Nos comandos de decisões estudados, um comando ou bloco de comandos é executado quando uma determinada condição é atendida. • Porém, existem problemas em que uma expressão pode assumir quaisquer valores. • Onde, para cada valor assumido, comandos diferentes são executados. 55
  • 56. • Algoritmos • Comandos de Decisões • Múltipla Escolha  Sintaxe: 56 escolha([comando]) caso [opção 1] [bloco 1] caso [opção 2] [bloco 2] ... caso [opção n] [bloco n] outrocaso [bloco] fimescolha
  • 57. • Algoritmos • Comandos de Decisões • Múltipla Escolha • O [comando] pode ser qualquer expressão válida. • Este é avaliado e o seu valor resultante é comparado com as opções distintas [opção 1], [opção 2], ..., [opção n]. • Se o valor for diferente de todos os casos, então o comando outrocaso é executado. 57
  • 58. Exemplo 04 58 Faça um algoritmos que apresente um menu para o usuário perguntando se ele deseja: 1 – Ir à praia ou 2 – Ir ao cinema
  • 59. • Algoritmos  Resolução do problema : 59 algoritmo "Escolha Caso" var opcao: inteiro inicio escreval("Digite 1 para praia ou 2 para cinema") leia(opcao) escolha (opcao) caso 1 escreva("Levar protetor solar") caso 2 escreva("Comprar pipoca e coca-cola") outrocaso escreva("Leia um bom livro") fimescolha fimalgoritmo Exemplo04
  • 60. 60 Problema VI Dado o número de um mês exiba o nome correspondente. // Se for dado o número 1 deverá imprimir "Janeiro"
  • 61. • Algoritmos • Comandos de Decisões 61 algoritmo "Problema 06" var mes: inteiro inicio escreva("Digite o número de um mês: ") leia(mes) escolha (mes) caso 1 escreval("Janeiro") caso 2 escreval("Fevereiro") outrocaso escreva("Mês inválido") fimescolha fimalgoritmo ResoluçãodoProblemaVI