Estruturas de Decisão

Documentos relacionados
Estruturas de Decisão

Estruturas de Decisão em C

Introdução à Lógica de Programação Aula 2. Adaptação de Luis Otavio Alvares

ALGORITMOS COM SELEÇÃO 1 - ESTRUTURA CONDICIONAL (ESTRUTURAS DE CONTROLE)

ESTRUTURA CONDICIONAL E SELEÇÃO

ALGORITMOS COM SELEÇÃO 1 - ESTRUTURA CONDICIONAL (ESTRUTURAS DE CONTROLE)

Estruturas de Controle de Fluxo

Aula 3 Oficina de Programação Algoritmos - Parte 2. Profa. Elaine Faria UFU

Estruturas de Decisão. Adaptado de Deise Saccol

Algoritmos e Lógica de Programação (Aula Prática - 09/05/16)

Estruturas de Controle de Fluxo Estruturas de Seleção. Givanaldo Rocha

Lógica Aula 3. Definição. Estrutura de decisão

Aplicaremos a técnica do teste de mesa sobre o algoritmo abaixo, o qual visa determinar o número de vértices de uma figura geométrica.

Estruturas de Controle de Fluxo

Introdução ao VisuALG

ET51D - INFORMÁTICA. Algoritmos - Estruturas de Decisão. Prof. Glauber G. O. Brante e Profa. Mariana Furucho

Portugol. Tiago Alves de Oliveira

Estruturas Condicionais. Tiago Alves de Oliveira

ET51D - INFORMÁTICA. Algoritmos - Estruturas de Decisão. Professor: Glauber G. O. Brante.

Português Estruturado (VISUALG)

Aula 16 Estruturas de Controle. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes

CAPÍTULO 3 INSTRUÇÕES BÁSICAS

Algoritmos e Lógica de Programação 80 horas // 4 h/semana. Exercício... Para começar... Resolução... Para começar... Para começar...

Estruturas de Seleção Seleção Simples e Composta (parte 1)

PROGRAMADOR JAVA. Aula 0X31 Semanas - 0b Instrutor : Léo Billi

Microcontroladores. Programação: fluxogramas, pseudocódigos e lógica. Prof. Daniel

Algoritmos e Programação

Prof. Jorge Cavalcanti

1ª LISTA DE EXERCÍCIOS - Extra

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPI JOÃO CÂMARA COMANDOS DE DESVIO

Instituto Federal de Minas Gerais - Campus avançado de Ponte Nova - IFMG Disciplina: Introdução a programação Professor: Saulo Henrique Cabral Silva

Tópicos abordados. Estruturas de Decisão. Simples Composta Encadeada

Algoritmos I Aula 5 Visualg

Introdução à Programação

LINGUAGEM DE PROGRAMAÇÃO

Estruturas Condicionais

Disciplina: Algoritmos e Programação Professor: Paulo César Fernandes de Oliveira, BSc, PhD

Exercícios: comandos condicionais

Programação Estruturada

Programação de Computadores I Estruturas de Decisão PROFESSORA CINTIA CAETANO

Introdução a programação Controle de Fluxo

Aula 6 Oficina de Programação Estruturas Condicionais no C. Profa. Elaine Faria UFU

Estruturas de controle: Estrutura de DECISÃO

Conceitos Básicos. Professor: Juliano Lucas Gonçalves.

Estruturas Condicionais

Lógica de Programação e Algoritmos

PSEUDO-CÓDIGO. Nickerson Fonseca Ferreira

Estruturas de Controle de Fluxo

LÓGICA DE PROGRAMAÇÃO. PROFª. M.Sc. JULIANA H Q BENACCHIO

ALGORITMOS E LÓGICA DE PROGRAMAÇÃO PRÉ AULA DIAGNÓSTICO 22/10/2015. Analise o algoritmo a seguir e depois assinale a alternativa correspondente:

Parte I - Expressões lógicas e operadores

Português Estruturado

Programação em C. Victor Amorim dos Santos

LISTA DE EXERCÍCIOS (2) PYTHON

Lógica e Linguagem de Programação Aula 03 - Estruturas de controle Exercícios de Fixação 2 - RESPOSTAS Professor: Danilo Giacobo

7 Comandos e Estruturas de Controle

ALGORITMO I ESTRUTURA DE CONTROLE DECISÃO SE / CASO;

Aula 4 Oficina de Programação Algoritmos - Parte 3. Profa. Elaine Faria UFU

INFORMÁTICA APLICADA AULA 02 ALGORITMOS

Operadores e instruções

ALGORITMOS E LÓGICA DE PROGRAMAÇÃO. Prof. Esp. Fabiano Taguchi

Exercícios: comandos condicionais

Processamento Sequencial e Condicional

Lista de Exercícios 2

Algoritmos e Técnicas de programação. Professora: Luciana Faria

Exercícios de Fixação Conteúdo das aulas 03 a 06

SEGUNDA LISTA DE EXERCÍCIOS ALGORÍTMOS SEQUENCIAS E CONDICIONAIS

Algoritmos e Programação

Programação Estruturada Aula VisualG

2ª Lista de Exercícios de Programação I

INFORMÁTICA APLICADA AULA 03 ALGORITMOS

Universidade Estadual do Sudoeste da Bahia Departamento de Estudos Básicos e Instrumentais Disciplina: Introdução à Ciência da Computação Prof.

CURSO BÁSICO DE PROGRAMAÇÃO AULA 3. Revisão Estrutura de Decisão Se Então

Fluxograma Pseudocódigo Estruturas de decisão. Professor Leandro Augusto Frata Fernandes

Aula 7: Estrutura de Decisão

Programação Procedimental

ALGORITMOS E PROGRAMAÇÃO. Andreza Leite Andreza.leite@univasf.edu.br

Algoritmos. Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi

CAPÍTULO IV. Estruturas Condicionais CAPÍTULO IV ESTRUTURAS CONDICIONAIS ESTRUTURA CONDICIONAL SIMPLES

Estruturas de Repetição. João Medeiros FATERN

UFG Instituto de Informática Curso de Engenharia de Software Disciplina de Introdução à Programação

n1, /,n2, =,res n1, n2, res: real res <- n1 / n2 Digite o Dividendo: n2<>0 Digite o Divisor: verdadeiro falso

Algoritmos e estrutura de dados I. Profa. Lara Popov Z. B. Oberderfer

Introdução à Programação. 4ª aula. Prof. José Honorato F. Nunes

Algoritmos e Programação

Estruturas de Decisão e Estruturas de Repetição

Introdução ao VisuALG

Algoritmos e Lógica de Programação. Prof. Marcos Antonio Estremoe. 1 - Faça um programa que imprima a frase: Bem Vindo à Engenharia Firb 2014.

Estruturas de Seleção Parte I Seleção Simples e Composta

ALGORITMOS AULA 2. Profª Amanda Gondim

LISTA DE EXERCÍCIOS 5 Algoritmos Estruturas de Controle - Seleção

Oficina de Introdução de Programação usando Linguagem Python Prof. Ms. Perini

Programação de Computadores Profa Jacqueline 1

UNEMAT Universidade do Estado de Mato Grosso Campus de Sinop Algoritmos e Programação Exercícios Práticos

Transcrição:

Estruturas de Decisão Professor: Juliano Lucas Gonçalves juliano.goncalves@ifsc.edu.br

Agenda Operadores Relacionais Lógicos Estruturas de Decisão Se... Entao caso 2

Operadores Relacionais São muito usados quando temos que tomar decisões nos algoritmos. Com eles fazemos testes, comparações, que resultam em valores lógicos (verdadeiro ou falso): Operadores Relacionais Português Estruturado Maior: > Menor: < Maior ou Igual: >= Menor ou Igual: <= Igual: = Diferente: <> 3

Operadores Relacionais - Exemplos Sabendo que A=3, B=7 e C=4, informe se as expressões abaixo são verdadeiras ou falsas. a) (A + C) > B ( ) b) B > = (A + 2) ( ) c) (B + A) <= C ( ) d) (C + A) < C ( ) e) C = (B A) ( ) 4

Operadores Lógicos Combinam resultados lógicos, gerando novos valores lógicos (verdadeiro ou falso). São eles: e ou não E V V V V F F F F F OU V V V F V V F F F V Verdadeiro; F Falso; NÃO V F F V 5

Operadores Lógicos (exemplos) Considere a seguinte atribuição de valores para as variáveis: A=3, B=4, C=8. Avalie as expressões a seguir indicando o resultado final: verdadeiro ou falso. a) A > 3 E C = 8 b) A <> 2 OU B <= 5 c) A = 3 OU B >= 2 E C = 8 d) A = 3 E NÃO B <= 4 E C = 8 e) A <> 8 OU B = 4 E C > 2 f) B > A E C <> A g) A > B OU B < 5 h) A <> B E B = C i) C > 2 OU A < B j) A > B OU B > A E C <> B 6

Estruturas de Decisão Comandos de decisão ou desvio fazem parte das técnicas de programação, para construir estruturas de algoritmos que não são totalmente seqüenciais; Com as instruções de desvio pode-se fazer com que o algoritmo proceda de uma ou outra maneira, de acordo com as decisões lógicas tomadas em função dos dados ou resultados anteriores. As principais estruturas de decisão são: SE...ENTÃO SE...ENTÃO...SENÃO SE...ENTÃO...SENÃO (ENCADEADO) CASO FOR...ENTÃO 7

Estruturas de Decisão SE...ENTÃO Formato: Se <condição lógica> então <ações> Fimse Significado: Se a <operação lógica> resultar em verdadeiro, então executar as <ações>. Senão,simplesmente ignorar as <ações> e seguir para a próxima instrução no algoritmo. Porque usar? Usada para decidir se um conjunto de ações opcionais deve ser executado ou não, dependendo do valor de algum dado ou de algum resultado que já tenha sido calculado no algoritmo. O valor do dado ou do resultado anterior será testado na operação lógica. 8

Estruturas de Decisão (exemplos) Mostre o pseudocódigo de um algoritmo que leia um valor qualquer, e se o valor for negativo mostre uma mensagem dizendo o valor digitado é negativo. algoritmo numero negativo" var n : inteiro Se condição for verdadeira inicio leia(n) se (n<0) entao Executar as instruções escreval (" o número digitado é negativo") fimse fimalgoritmo 9

Exercício Faça um algoritmo que receba um número real qualquer e mostre uma mensagem caso esse número seja maior que 10.5 10

Estruturas de Decisão SE...ENTAO...SENAO Formato: Se <operação lógica> então <ações 1> senao <ações 2> Fimse Significado: Se a <operação lógica> resultar em verdadeiro, então executar <ações 1>. Senão, ignorar <ações 1> e executar <ações 2>. Porque Usar? Para decidir entre duas alternativas de ações. Um dos dois conjuntos de ações será executado e o outro não, dependendo do valor de algum dado ou de algum resultado que já tenha sido calculado no algoritmo. O valor do dado ou do resultado anterior será testado na operação lógica, determinando qual conjunto de ações será executado. 11

Estruturas de Decisão (exemplos) Mostre o pseudocódigo de um algoritmo que leia um valor qualquer, e mensagem dizendo se o valor digitado é negativo ou positivo. algoritmo positivo ou negativo var n : inteiro inicio leia(n) se (n<0) entao escreval (" o número digitado é negativo") senao escreval (" o número digitado é positivo") fimse fimalgoritmo Se condição for verdadeira, executar bloco em vermelho, se falsa executar o bloco em azul. se falsa, executar o bloco em azul. 12

Exercício Faça um algoritmo que receba um número inteiro qualquer e mostre uma mensagem informando se esse número é maior que 100 ou menor que 100. 13

SE...ENTAO...SENAO (encadeados) Estruturas de Decisão Formato: Se <operação lógica> então <ação 1> senão se <operação lógica> então <ação 2> senão <ação 3> Fimse Fimse Significado: Se a primeira <operação lógica> resultar em verdadeiro, então executar <ações 1>. Senão, ignorar <ações 1> e testar a segunda <operação lógica>. Se a segunda operação lógica for verdadeira então executar <ações 2>. Senão, ignorar <ações 2> e executar <ações 3>. 14

Estruturas de Decisão (exemplos) Mostre o pseudocódigo de um algoritmo que leia um valor qualquer, e mensagem dizendo se o valor digitado é negativo, positivo ou igual a 0. algoritmo positivo, negativo e 0" var n : inteiro inicio leia(n) se (n<0) entao escreval (" o número digitado é negativo") fimse senao se (n>0) entao escreval (" o número digitado é positivo") senao escreval (" o número é igual a 0") fimse fimalgoritmo Se condição for verdadeira, executar bloco em vermelho, se falsa,testar condição em azul Se condição for verdadeira, executar bloco em azul, se falsa, executar bloco em verde Condição correta 15

Exercício Faça um algoritmo que receba um número inteiro e mostre uma mensagem informando se eel é maior que 100, menor que 100 ou igual a 100. 16

Caso Estruturas de Decisão Formato: Escolha valor Caso <valor 1> escreva <ações 1> Caso <valor 2> escreva <ações 2> Caso <valor 3> escreva <ações 3> Caso contrario escreva <ações> fimescolha Significado: Se <valor> for igual a <valor 1>, então executar <ações 1>. Se for igual a <valor 2>, ignorar <ações 1> e executar <ações 2>, e assim por diante. Usada para: escolher apenas um conjunto de ações dentre vários alternativos. Aqui o teste não é mais uma operação lógica: o próprio valor de algum dado ou resultado anterior (que pode ser de outros tipos além do lógico) é que vai determinar qual desses conjuntos de ações será executado. 17

Estruturas de Decisão (exemplos) Algoritmo que informa o estado de um determinado time de futebol. algoritmo "Times" var time: caractere inicio escreva ("Entre com o nome de um time de futebol: ") leia (time) escolha time caso "Flamengo escreval ("É um time carioca.") caso Corinthians escreval ("É um time paulista.") outrocaso escreval ("É de outro estado.") fimescolha fimalgoritmo 18

Exercícios 1. Faça um algoritmo para calcular a média final da disciplina de Programação, mostrar essa média final e também uma mensagem informando se o aluno foi aprovado (média >= 7) ou reprovado. Considere duas avaliações. 2. Faça um algoritmo que receba a idade do usuário e verifique se ele tem 18 anos ou mais. Se a resposta for positiva escrever maior de idade, senão menor de idade. 3. Faça um algoritmo que receba três números inteiros e mostre o maior.deles. Considere que os números sempre serão diferentes. 4. A empresa XKW concedeu um bônus de 20% do valor do salário a todos os funcionários com tempo de trabalho na empresa igual ou superior a 5 anos e de 10% aos demais. Faça um algoritmo que receba o salário e o tempo de serviço de um funcionário, calcule e mostre o valor do bônus recebido por ele. 5. Implemente um código para aprovar empréstimo bancário. O código deve pedir 3 informações: valor do empréstimo, número de parcelas e salário do solicitante. Aprovar empréstimo caso o valor das parcelas representem no máximo 30% do salário do solicitante. 19

Exercícios 6. Construa um algoritmo que leia o código de um determinado produto e mostre a sua classificação. Utilize a estrutura se...então..senão Código Classificação 1 - Alimento não-perecível 2, 3 ou 4 - Alimento perecível 5 ou 6 - Vestuário 7 - Higiene pessoal 8, 9, 10 - Utensílios domésticos Qualquer outro código Inválido 7. Resolva o exercício número 6 utilizando a estrutura Caso. 8. Faça um algoritmo que receba um número inteiro qualquer e mostre se ele é par ou impar. 9. Tendo como entrada o total vendido por um funcionário no mês de abril, faça um algoritmo que calcule e mostre a sua comissão e seu salário bruto neste mês, sabendo que o seu salário base é R$1.200,00 e sua comissão é de 10% sobre o total vendido. O funcionário só ganhará comissão se o valor total vendido for maior que R$2.000,00. 20

Exercícios 10. Faça um programa que solicita ao usuário três valores correspondentes aos lados de um triângulo. Informe se o triângulo possui 3 lados iguais, dois lados iguais ou não possui lados iguais). 11. Depois da liberação do governo para as mensalidades dos planos de saúde, as pessoas começaram a fazer pesquisas para descobrir um plano de saúde, não muito caro. Um vendedor de um plano de saúde apresentou a tabela a seguir. Faça um algoritmo em pseudocódigo que receba a idade de 1 pessoa, mostre essa idade e também mostre o valor que ela deverá pagar, segundo a seguinte tabela: Idade Valor Até 10 anos R$ 30,00 Acima de 10 até 29 anos R$ 60,00 Acima de 29 até 45 anos R$ 120,00 Acima de 45 até 59 anos R$ 150,00 Acima de 59 anos R$ 300,00 21

Exercícios 12. Faça um algoritmo que leia o ano de nascimento de uma pessoa e o ano atual, calcule e mostre: a) A idade dessa pessoa b) quantos anos ela terá em 2020. 13. Construa um algoritmo que, tendo como dados de entrada a altura (H) e o sexo (S) de uma pessoa calcule e apresente seu peso ideal utilizando as seguintes fórmulas: Para homens: Peso ideal (P) = (72,7 * H) 58 Para mulheres: Peso ideal (P) = (62,1 * H) 44,7 14. Construa um algoritmo para calcular o valor a ser pago pelo período de estacionamento do automóvel (PAG). O usuário entra com os seguintes dados: hora (HE) e minuto (ME) de entrada, hora (HS) e minuto (MS) de saída. Sabe-se que este estacionamento cobra hora cheia, ou seja, se passar um minuto ele cobra a hora inteira. O horário de funcionamento é das 08:00 as 18:00. O valor cobrado pelo estacionamento é: R$ 4,00 para 1 hora de estacionamento R$ 6,00 para 2 horas de estacionamento R$ 1,00 por hora adicional (acima de 2 horas) 15. Construa um algoritmo que determine quanto será gasto para encher o tanque de um carro (VG), sabendo-se que o preço da gasolina é de R$ 2.80 e o preço do álcool é de R$ 2.00. O usuário fornecerá os seguintes dados: Tipo de combustível (G gasolina ou A álcool) e Capacidade do tanque (CT), em litros 22

Exercícios 16. Faça um algoritmo que receba, o nome do aluno, a nota de duas avaliações, calcule a média e mostre ao usuário o nome do aluno, sua média final e APENAS UMA das mensagens abaixo informando a sua situação: Média >=7 Aprovado Mensagem =10 Aprovado com distinção >=3 e<7 Exame <3 Reprovado 17. Faça um algoritmo que receba o nome do aluno e as notas de três avaliações, calcule e mostre a sua média baseada nos critérios abaixo: Media >= 7 Aprovado Média >= 3 e <7 Você está em exame Leia nota do exame mediafinal = (notadoexame + media) /2 Mostrar a media final Se mediafinal >= 5 Aprovado no exame Senao Reprovado no exame Média<3 Reprovado sem direito a exame 23