Controle de Fluxo Comandos de decisão multipla

Documentos relacionados
Controle de Fluxo Comandos de decisão multipla

Aula 05: Condicionais (Parte 2)

Aula 06: Condicionais (switch)

Algoritmos e Programação

Controle de Fluxo Comandos de repetição: while e do-while

Controle de Fluxo Comandos de repetição

ESTRUTURA COM DECISÃO COMPOSTA

Estruturas Homogêneas II (Matrizes)

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA ESTRUTURA COM DECISÃO MÚLTIPLA. Prof. Dr. Daniel Caetano

Aula 8 Comandos de Seleção

Controle de Fluxo Comandos de decisão

Linguagem C: if-else e operadores lógicos

Procedimentos e Funções

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE ESCOLA DE CIÊNCIAS E TECNOLOGIA. ECT1203 Linguagem de Programação Turma Prof.

UNIVERSIDADE FEDERAL DO PAMPA CAMPUS BAGÉ ALGORITMOS E PROGRAMAÇÃO. Estruturas de condição. Prof. Alex Camargo

Unidade 10: Estruturas de Decisão Compostas Prof. Daniel Caetano

Treinamento Olimpíada Brasileira de Informática

Programação científica C++

Lógica de Programação I

Aula 02 -Introdução àlinguagc Programação: Estrutura-Seleção. OPL e IC1 Prof: Anilton Joaquim da Silva

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA

Procedimentos e Funções

Estruturas II UFOP 1/35

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 controle: Estrutura de DECISÃO

Aula 17: Funções (Parte III) e Introdução a Vetores

Controle de Fluxo Comandos de decisão

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

ESTRUTURAS CONDICIONAIS. Introdução à Ciência da ComputaçãoI Simone Senger de Souza

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

3. Linguagem de Programação C

BCC Introdu c ao ` a Programa c ao Portugol Guillermo C amara-ch avez UFOP 1/35

Módulo 5. Instruções if e switch. Algoritmos e Estruturas de Dados I C++ (Rone Ilídio)

Introdução à Ciência da Computação

Estruturas Condicionais e de Repetição

Aula 10: Manipulação do fluxo de laços

Linguagem C. Programação Estruturada. Estruturas de Controle. Prof. Luis Nícolas de Amorim Trigo

Aula 6: Comandos Estruturados Estrutura Condicional

Aula 01. Programação Condicional Programação repetitiva

Estrutura de controle repetitiva: Para (for)

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA

GFM015 Introdução à Computação Algoritmos e Programação / Controle de Fluxo / Estutura Condicional

USP - ICMC - SSC SSC o. Semestre Disciplina de Introdução à Computação para Engenharia Ambiental

Aula 2 Comandos de Decisão

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

ESTRUTURAS CONDICIONAIS. Baseado nos slides de autoria de Rosely Sanches e Simone Senger de Souza

Programação I PRG Engenharia de Telecomunicações 2ª Fase Professor: Cleber Jorge Amaral

Prof. Tiago Alves de Oliveira. Tiago Alves de Oliveira - 1

Programação II. Aula 3

Introducao a Programacao Estruturas de decisão

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

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA

Controle de Fluxo Utilizando C

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: estruturas de repetição While / Do While / For

CONTROLE DE FLUXO. Algoritmos e Programação. Prof. Alceu Britto Slides cedidos pelo Prof. Edson J. R. Justino (PUCPR) Aula 9 e 10

Variáveis, Comandos de Atribuição e Comando de Entrada e Saída

Estruturas de Decisão em C

Aula 10 Comandos de Repetição

Aula 11: Laços e exercícios

LÓGICA DE PROGRAMAÇÃO ESTRUTURAS DE DECISÃO PARA ENGENHARIA. Prof. Dr. Daniel Caetano

Variáveis, Comandos de Atribuição e Comando de Entrada e Saída

Algoritmos e Técnicas de

1ra. Avaliação - Grupo B

Estruturas de Decisão. Adaptado de Deise Saccol

Estruturas de seleção. Prof.: Jesus

Algoritmos Estrutura Condicional

Seleção Múltipla Laços (while, do-while, for) AULA 05

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA

Estruturas de Controle

Sistemas Operacionais e Introdução à Programação. Introdução à Lógica de Programação: estruturas de repetição

Aula 05 Estrutura de Seleção em C

Introdução à Programação SCC-121

Linguagem C estruturas de repetição

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: Operadores relacionais e lógicos estruturas condicionais If...

Modulo 3: Else, Case, For...

Estruturas (registros)

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE ESCOLA DE CIÊNCIAS E TECNOLOGIA. ECT1203 Linguagem de Programação Turma Prof.

Processamento Sequencial e Condicional

Aula 26: Estruturas heterogêneas

Programação I Estruturas de Decisão

INTRODUÇÃO AO AMBIENTE DE PROGRAMAÇÃO MATLAB

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

Introdução à Programação. Expressões Booleanas e Comandos Condicionais

Controle de Fluxo Utilizando C

Módulo 3 Controle de Fluxo

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA ESTRUTURAS DE DECISÃO. Prof. Dr. Daniel Caetano

Algoritmos e Estruturas de Dados I IEC012. Linguagem C - Estruturas de Controle - Seleção. Prof. César Melo

MC-102 Aula 05 Comandos Condicionais

Linguagem de Programação

Aula 7: Estrutura de Decisão

Estruturas de Seleção

Laboratório de Programação II

LINGUAGEM C: COMANDOS DE REPETIÇÃO

Linguagem C (estruturas condicionais)

CIT Aula 02 Variáveis e Estruturas de desvio condicional. Autor: Max Rodrigues Marques Carga Horária: 2 h 22/07/15 1

NOME DO ALUNO: AVALIAÇÃO SIMULADA

Estruturas Homogêneas (Vetores)

Programação Estruturada

Universidade Federal de Uberlândia Faculdade de Computação. Estruturas de repetição

Transcrição:

BCC 201 - Introdução à Programação Controle de Fluxo Comandos de decisão multipla Guillermo Cámara-Chávez UFOP 1/29

Lembrando a aula passada... I 2/29

Lembrando a aula passada... II Comando de decisão: i f ( e x p r ) {... // s e f o r VERDADEIRA e l s e {... // s e f o r FALSA 3/29

Lembrando a aula passada... III Pseudocódigo e fluxograma Entrada s e e x p r então... senão... f i m s e Comando 2 não condição sim Comando 1 Saída 4/29

Lembrando a aula passada... IV Faça um Programa que pergunte em que turno você estuda. Peça para digitar M-matutino ou V-Vespertino ou N- Noturno. Imprima a mensagem Bom Dia!, Boa Tarde! ou Boa Noite!, conforme o caso. 5/29

Lembrando a aula passada... V #i n c l u d e <i o s t r e a m > u s i n g namespace s t d ; i n t main ( ) { c h a r t u r n o ; cout << "Digite o turno: (M)atutino, (V) espertino e (N) oturno" ; c i n >> t u r n o ; i f ( t u r n o == M ) cout << "Bom dia \n" ; e l s e { i f ( t u r n o == V ) cout << "Boa tarde \n" ; e l s e cout << "Boa noite \n" ; r e t u r n 0 ; 6/29

Lembrando a aula passada... VI... sim Turno = M não Bom dia sim Turno = V não Boa tarde Boa noite... 7/29

Lembrando a aula passada... VII #i n c l u d e <i o s t r e a m > u s i n g namespace s t d ; i n t main ( ) { c h a r t u r n o ; cout << "Digite o turno: (M)atutino, (V) espertino e (N) oturno" ; c i n >> t u r n o ; i f ( t u r n o == M ) cout << "Bom dia \n" ; i f ( t u r n o == V ) cout << "Boa tarde \n" ; i f ( t u r n o == N ) cout << "Boa noite \n" ; r e t u r n 0 ; 8/29

Lembrando a aula passada... VIII... Turno = M sim Bom dia Turno = V sim Boa tarde Turno = N sim Boa noite... 9/29

Lembrando a aula passada... IX #i n c l u d e <i o s t r e a m > u s i n g namespace s t d ; i n t main ( ) { c h a r t u r n o ; cout << "Digite o turno: (M)atutino, (V) espertino e (N) oturno" ; c i n >> t u r n o ; i f ( t u r n o == M ) cout << "Bom dia \n" ; i f ( t u r n o == V ) cout << "Boa tarde \n" ; e l s e cout << "Boa noite \n" ; r e t u r n 0 ; Código certo? 10/29

Lembrando a aula passada... X... Turno = M sim Bom dia não Turno = V sim Boa noite Boa tarde... 11/29

Estrutura seletiva I O objetivo do comando é verificar várias possibilidades para valores de uma variável ou expressão Fluxograma idade 5 15 25 30 5 anos 15 anos 20 20 anos 25 anos 30 anos 12/29

Estrutura seletiva II Pseudocódigo E s c o l h a < e x p r e s s ã o de s e l e ç ã o > caso < exp 1 > < l i s t a de comandos 1 > caso < exp 2 > < l i s t a de comandos 2 > caso < exp 3 > < l i s t a de comandos 3 >... o u t r o c a s o < l i s t a de comandos n > f i m e s c o l h a 13/29

Estrutura seletiva III C/C++ s w i t c h ( e x p r e s s ã o ) { c a s e c o n s t 1 : grupo de comandos 1 ; b reak ; c a s e c o n s t 2 : grupo de comandos 2 ; b reak ;... d e f a u l t : grupo de comandos d e f a u l t ; 14/29

Estrutura seletiva IV Funciona da seguinte forma: switch verifica se a expressão é equivalente a const1, se for, executa o grupo de comandos 1 até que encontre um break. Se a expressão não for igual a const1, verifica a relação com const2 e assim por diante. Se não for nenhum dos valores, o grupo de comandos default é executado. 15/29

Estrutura seletiva V Os dois trechos de programa abaixo são equivalente s w i t c h ( x ) { c a s e 1 : cout << "x eh 1" ; b reak ; c a s e 2 : cout << "x eh 2" ; b reak ; d e f a u l t : cout << "valor de x desconhecido " ; 16/29

Estrutura seletiva VI i f ( x == 1) cout << "x eh 1" ; e l s e { i f ( x == 2) cout << "x eh 2" ; e l s e cout << "valor de x desconhecido " ; 17/29

Estrutura seletiva VII Se não usamos o comando break em cada case o programa continuaria até o fim do bloco s w i t c h ( x ) { c a s e 1 : // s e x f o r 1, p a s s a por a q u i c a s e 2 : // s e x f o r 1 ou 2, p a s s a por a q u i c a s e 3 : cout << "x eh 1, 2 ou 3" ; b reak ; d e f a u l t : c o u t << "x n~ao eh nem 1, nem 2 e nem 3" ; 18/29

Estrutura seletiva VIII O switch só permite comparar expressões com constantes. Se precisarmos comparar com variáveis ou verificar faixas de valores, devemos usar o comando if. 19/29

Exemplo 1 I um programa que leia o código de um determinado produto e mostre a sua classificação. Utilize a tabela abaixo como referência: Código Classificação 1 Alimento não-perecível 2 Alimento perecível 3 Vestuário 4 Limpeza 20/29

Exemplo 1 II Fluxograma Inicio cod Digite Código Leia cod cod 1 2 4 outro caso Alimento não-perecível Alimento perecível 3 Vestuário Limpeza Produto não existe Fim 21/29

Exemplo 1 III Pseudocódigo I n i c i o i n t e i r o : cod ; E s c r e v a ( "Digite código" ) ; L e i a ( cod ) ; E s c o l h a cod caso 1 E s c r e v a ( " Alimento nao - perecivel " ) ; caso 2 E s c r e v a ( " Alimento perecivel " ) ; caso 3 E s c r e v a ( " Vestuario " ) ; caso 4 E s c r e v a ( " Limpeza " ) ; o u t r o c a s o E s c r e v a ( " Produto nao existe " ) ; f i m e s c o l h a Fim 22/29

Exemplo 1 IV i n t main ( ) { i n t cod ; c o u t << " Inserir codigo produto \n" ; c i n >> cod ; s w i t c h ( cod ) { c a s e 1 : cout << " Alimento nao - perecivel \n" ; break ; c a s e 2 : cout << " Alimento perecivel \n" ; break ; c a s e 3 : cout << " Vestuario \n" ; b reak ; c a s e 4 : cout << " Limpeza \n" ; b reak ; d e f a u l t : cout << " Produto nao existe \n" ; r e t u r n 0 ; 23/29

Exemplo 2 Dada uma letra, escreva na tela se essa letra é ou não uma vogal (pode considerar apenas letras minúsculas). 24/29

Exemplo 2 Dada uma letra, escreva na tela se essa letra é ou não uma vogal (pode considerar apenas letras minúsculas). i n t main ( ) { c h a r l e t r a ; cout << " Inserir uma letra \n" ; c i n >> l e t r a ; s w i t c h ( l e t r a ) { c a s e a : c a s e e : c a s e i : c a s e o : c a s e u : cout << "Vogal!! \n" ; b reak ; d e f a u l t : cout << "Nao eh uma vogal \n" ; r e t u r n 0 ; 24/29

Exemplo 3 I Implemente o programa da calculadora utilizando uma instrução switch-case para determinar a operação que deve ser executada, conforme o usuário escolheu no menu de opções: 25/29

Exemplo 3 II i n t main ( ) { d o u b l e num1, num2 ; c h a r op ; c o u t << " Inserir numeros e operador (3 + 5) \n" ; c i n >> num1 >> op >> num2 ; s w i t c h ( op ) { c a s e + : cout << num1 + num2 ; break ; c a s e - : cout << num1 num2 ; b r eak ; c a s e * : cout << num1 num2 ; b r eak ; c a s e / : i f (num2!= 0) cout << num1 / num2 ; e l s e cout << " divisao invalida \n" ; b reak ; d e f a u l t : cout << " Operador invalido \n" ; r e t u r n 0 ; 26/29

Exemplo 4 I um programa que indique o número de dias existentes em um mês. Número de dias Meses 31 01, 03, 05, 07, 08, 10, 12 30 04, 06, 09, 11 28 02 27/29

Exemplo 4 II i n t main ( ) { i n t mes ; cout << "Digite o mes: " ; c i n >> mes ; s w i t c h ( mes ) { c a s e 1 : c a s e 3 : c a s e 5 : c a s e 7 : c a s e 8 : c a s e 1 0 : c a s e 1 2 ; cout<<"mes tem 31 dias" ; b reak ; c a s e 4 : c a s e 6 : c a s e 9 : c a s e 1 1 : cout<<"mes tem 30 dias" ; b reak ; c a s e 2 : cout<<"mes tem 28 dias" ; b reak ; d e f a u l t : cout<<" Mes n~ao existe" ; 28/29

FIM 29/29