Disciplina: Constr. de Algoritmos e Prog. de SistemasProfessor: Jeovane Reges
Caxias – MA2016
ACULDADE DE CIÊNCIAS E TECNOLOGIA DO MARANHÃO
2
Link Drive
bit.ly/ads-algoritmos
3
Algoritmos
4
Exemplos Resolvidos
<Comandos de Decisões>
5
Problema IFaça um algoritmo que leia um número qualquer e imprima o quadrado desse
número caso ele seja positivo.
6
• Algoritmos • Problema I• Solucionando o problema...
• Entrada:• Um número qualquer
• numero ← 8
• Processamento:• Verificar se o numero é positivo.// se o "numero" for maior do que zero, então ele é positivo
• Saída:• Quadrado do numero fornecido.
7
• Algoritmos • Comandos de Decisões
Resolução do Problema I
algoritmo "Problema 01"var numero: inteiroinicio escreva("Digite um valor: ") leia(numero)
se (numero > 0) entao escreval(Quad(numero)) fimsefimalgoritmo
8
Problema IIFaça um algoritmo que leia o ano atual e o ano de nascimento de uma pessoa. Em
seguida, escreva uma mensagem que diga se ela poderá votar este ano.
// para uma pessoa votar ele deve ter uma idade maior ou igual a 16 anos.
9
• Algoritmos • Problema II• Solucionando o problema...
• Entrada:• Ano de nascimento e ano atual
• ano_nasc ← 1990• ano_atual ← 2016
• Processamento:• idade ← ano_atual - ano_nasc // 25
anos• Se a idade for maior ou igual à 16 entao é eleitor
• Saída:• Poderá votar.
10
• Algoritmos • Comandos de Decisões
Resolução do Problema II
algoritmo "Problema 02"var ano_nasc, ano_atual, idade: inteiroinicio ano_nasc ← 1990 ano_atual ← 2016 idade ← ano_atual - ano_nasc
se (idade >= 16) entao escreva("Poderá votar") fimsefimalgoritmo
11
Problema IIIFaça um algoritmo que leia um número e apresente-o caso seja
divisível por 2, mas não simultaneamente por 2 e 3.
12
• Algoritmos • Problema III• Solucionando o problema...
• Entrada:• Um número qualquer
• num ← 14
• Processamento :
• Saída:
• Apresentar o número fornecido pelo usuário.
14 2(0) 7
14 3(2) 4
num
13
• Algoritmos • Comandos de Decisões
Resolução do Problema III
algoritmo "Problema 03"var num: inteiroinicio escreva("Digite um valor: ") leia(num)
se ((num % 2 = 0) E (num % 3 <> 0)) entao escreval(num) fimsefimalgoritmo
14
Problema IVFaça um programa que leia um
numero e apresente:• A raiz quadrada caso seja positivo• O cubo caso seja negativo
15
• Algoritmos • Problema IV• Solucionando o problema...
• Entrada:• Um número qualquer
• numero ← 8
• Processamento:• Verificar se o numero é positivo ou
negativo.• Positivo: Raiz quadrada• Negativo: Elevado ao cubo
• Saída:• Raiz quadrada do numero.• Ou o numero elevado ao cubo.
16
• Algoritmos • Comandos de Decisões
Resolução do Problema IV
algoritmo "Problema 04"var numero: inteiroinicio escreva("Digite um valor: ") leia(numero)
se (numero > 0) entao escreval(RaizQ(numero)) senao escreval(Exp(numero, 3)) fimsefimalgoritmo
17
Problema VDada a idade e o tempo de serviço de um trabalhador, escreva se ele pode ou não se aposentar. As condições para aposentadoria
são:• Ter pelo menos 65 anos; • Ter trabalhado pelo menos 30 anos;• Ter pelo menos 60 anos e trabalhado pelo menos 25 anos.
18
• Algoritmos • Problema V• Solucionando o problema...
• Entrada:• Idade e tempo de serviço
• Idade ← 60• tempo_serv ← 27
• Processamento:• Se tem pelo menos 65 anos;• Senao se trabalhou pelo menos 30 anos;• Senao se tem pelo menos 60 anos e
trabalhou pelo menos 25 anos.
• Saída:• Pode se aposentar.
19
• Algoritmos
algoritmo "Problema 05"var idade, tempo_serv: inteiroinicio idade ← 60 tempo_serv ← 27 se (idade >= 65) entao escreval("Pode se aposentar") senao se (tempo_serv >= 30) entao escreval("Pode se aposentar") senao se ((idade >= 60) E (tempo_serv >= 25)) então escreval("Pode se aposentar") fimse fimse fimsefimalgoritmo
Reso
luçã
o do
Pro
blem
a V
20
Problema VIFaça um algoritmo que dados três números inteiros, apresente-os em
ordem crescente.
21
• Algoritmos • Problema VI• Solucionando o problema...
• Entrada:• Três números quaisquer...
• n1 ← 11• n2 ← 10• n3 ← 9
• Processamento:• Encontrar o 3º. maior, 2º. maior e 1º. maior. // comparar os valores uns com os outros
• Saída:• Apresentá-los em ordem crescente.
22
• Algoritmos
algoritmo "Problema 06"var n1, n2, n3: inteiroinicio n1 ← 11 n2 ← 10 n3 ← 12 se ((n1 > n2) E (n2 > n3)) entao escreval(n3, n2, n1) senao se ((n1 > n3) E (n3 > n2)) entao escreval(n2, n3, n1) senao // verifica as outras condições fimse fimsefimalgoritmo
Reso
luçã
o do
Pro
blem
a VI
23
Problema VIIUsando o comando escolha .. caso,
faça um algoritmo que leia um número inteiro entre 1 e 7 e imprima o dia da
semana correspondente a esse número.
24
• Algoritmos • Problema VII• Solucionando o problema...
• Entrada:• Um número que represente um dia da
semana• dia ← 2
• Processamento:• Verificar qual dia da semana o numero
representa.
• Saída:• 1 → Domingo• 2 → Segunda-feira• 3 → Terça-feira
25
• Algoritmos• Comandos de Decisões
algoritmo "Problema 07"var dia: inteiroinicio escreva("Digite um numero: ") leia(dia) escolha (dia) caso 1 escreval("Domingo") caso 2 escreval("Segunda-feira") outrocaso escreval("Dia inválido") fimescolha fimalgoritmoRe
solu
ção
do P
robl
ema
VII