1 / 15

Aula 09

Aula 09. Pontifícia Universidade Católica de Goiás PUC GOIÁS Departamento de Computação Informática e Computação. Professor: MSc . Mário Oliveira Orsi Cesar Augusto da Rocha Magalhães. AULA 7 CONTROLE DE FLUXO ESTRUTURA CONDICIONAL 3.

kera
Download Presentation

Aula 09

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Aula 09

  2. Pontifícia Universidade Católica de Goiás PUC GOIÁSDepartamento de ComputaçãoInformática e Computação Professor: MSc. Mário Oliveira Orsi Cesar Augusto da Rocha Magalhães

  3. AULA 7 CONTROLE DE FLUXO ESTRUTURA CONDICIONAL 3

  4. Uma locadora tem as seguintes regra para aluguel de fitas: • seg, ter e qua (2,3 e 4) um desconto de 30% no preço normal; dom(1)  preço normal; qui, sex e sab (5,6 e 7)  um acréscimo de 20% no preço normal. • Aluguel de filmes comuns: preço normal, • lançamentos:acréscimo de 13% no preço normal • Desenvolver um programa para ler o preço normal em R$, o dia a ser locado (1 a 7) a categoria do filme (C ou L). Calcular e imprimir o preço final do aluguel. Considerando que o cliente só pode alugar uma fita por 1 dia. PF = 3.00 * 1.2 = 3.60 PF = 3.60 + 3.00 * 0,13 = 3.99 QUAL TESTE ‘PRIMEIRO’? DIA = DOMINGO Não só devemos fazer teste se for para calcular algo PF = PN (inicio) para DIA = 1 se DIA = 2,3 ou 4 PF = PN*0.7 se DIA = 5,6 ou 7 PF = PN*1.2 se TIPO = L PF = PF+PN*0,13 entradas PREÇO FINAL 3.99

  5. #include <iostream> usingnamespacestd; main() { float PN, PF; int DIA; string TIPO; cout<<"Digite o preconormal \n"; cin>>PN; cout<<"Digite o TIPO (C ou c) Comum (L ou l) Lancamento \n"; cin>>TIPO; cout<< “ QUAL O DIA DA LOCACAO 1,2,3,4,5,6 ou 7 \n "; cin>>DIA; PF=PN; if(DIA>7 || DIA<1) { cout<<"\n\n\nDia da Semana de locação errado"; cout<<"\n\nO dia escolhido foi "<<DIA<<"\n\n"; } else { if ((DIA==2)||(DIA==3)||(DIA==4)) {PF = PN*0.7; } else if((DIA==5)||(DIA==6)||(DIA==7)) { PF = PN*1.2; } if ((TIPO=="L")||(TIPO=="l")) { PF = PF+ PN*0.13; } cout<<"O PRECO FINAL EH R$"<<PF<<endl; } system("PAUSE"); } blockbuster.exe PF = PN (inicio) para DIA = 1 se DIA = 2,3 ou 4 PF = PN*0.7 se DIA = 5,6 ou 7 PF = PN*1.2 se TIPO = L PF = PF+PN*0,13

  6. Uso de um MENU de Opções para executar Instruções No desenvolvimento de um programa que precisa executar uma variedade de instruções dependendo de testes sucessivos (estrutura condicional aninhada) Podemos utilizar um comando (case-switch) em que: É oferecido um Menu de opções para executar as intruções de acordo com a resposta ou seja a opção selecionada. Exemplo: estacinamento com preços diferenciados Menu Opção 1 – matutino Opção 2 – vespertino Opção 3 – noturno Se a opção do menu escolhida foi: Opção 1 – mostro o horário inicio e final e preço Opção 2 – mostro o horário inicio e final e preço Opção 3 – mostro o horário inicio e final e preço

  7. COMANDO CASE - SWITCH RESPOSTA deve ser do TIPO int ou char (apenas um caracter) switch(resposta) { case 'a': sentenças de instruções para a opção a ; break;  case 'b': sentenças de instruções para a opção b ; break;  case 'c': sentenças de instruções para a opção c ; break; default: sentenças de instruções para entrada errada ; break; }

  8. if (tipo == 1) { taxa = 10; } else{ if (tipo == 2) { taxa = 8; } else{ if (tipo == 3){ taxa = 6; } else{ if (tipo == 4){ taxa = 4; } else{ if (tipo == 5){ taxa = 2; } else{ taxa = 0; } } } } } Exemplo: Em uma financeira para cada tipo(1 a 5) de empréstimo: tem que ser aplicado uma taxa diferenciada switch (tipo){ case 1: taxa = 10; break; case 2: taxa = 8; break; case 3: taxa = 6; break; case 4: taxa = 4; break; case 5: taxa = 2; break; default: taxa = 0.0; }

  9. if (tipo == 1) { taxa = 10; } else{ if (tipo == 2) { taxa = 8; } else{ if (tipo == 3){ taxa = 6; } else{ if (tipo == 4){ taxa = 4; } else{ if (tipo == 5){ taxa = 2; } else{ taxa = 0; } } } } } Exemplo: Em uma financeira para cada tipo(1 a 5) de empréstimo: tem que ser aplicado uma taxa diferenciada switch (tipo){ case 1: taxa = 10; break; case 2: taxa = 8; break; case 3: taxa = 6; break; case 4: taxa = 4; break; case 5: taxa = 2; break; default: taxa = 0.0; } Fazer um programa entrando com o Tipo e o valor a ser financiado e como resposta o valor a pagar após 1 ano usando as instruções da esquerda ou da direita

  10. Desenvolver um programa que leia o valor de dois números inteiros e a operação aritmética desejada; calcule, então, e mostre a resposta adequada. Utilize os números e símbolos da tabela a seguir para ler e mostrar qual a operação aritmética escolhida

  11. #include <iostream> using namespace std; main( ){    float numb1 = 0, numb2 = 0;       /* os dois números de entrada */    int menu = 1;             /* adicionar, subtrair, dividir ou multiplicar */    float total = 0;           /* o resultado do cálculo */    char tipo;             /* o tipo do cálculo */     cout<<"Entre com o primeiro número \n\t";    cin>>num1;                     cout<<"\n\nEntre com o segundo número\n\t";    cin>>num2;     cout<<"\n\n O que você quer fazer?\n\n";       cout<<"\t1 = adicionar\n";    cout<<"\t2 = subtrair\n";    cout<<"\t3 = multiplicar\n";    cout<<"\t4 = dividir\n";     cout<<"\n\nFaça a sua escolha:\n\t";    cin>>menu;   

  12. switch (menu)                  /* seleciona o tipo de cálculo */ { case 1: total = numb1 + numb2; tipo = '+';  break; case 2: total = numb1 - numb2; tipo = '-'; break; case 3: total = numb1 * numb2; tipo = '*'; break; case 4: if( numb2 == 0)            /* não pode ser dividido por zero */        cout<<"\n\n\tVocê não pode dividir por zero. 0\n\n"); else{ total = numb1 / numb2;         tipo = '/';}         break; default: cout<<"Opção Inválida\n";    } cout<<"\n\n\t"<< numb1<< tipo<< numb2<<" = "<< total);   system ("pause");  } operacoes aritm.exe

  13. Exercício em Sala de Aula Faça um programa que leia um número e diga se ele é divisível por 2 e por 3 simultaneamente . Use estrutura de desvio condicional. Apresentar na tela todas as opções A – O número é divisível simultaneamente B - Se o número não for divisível simultaneamente informar que não é divisível e mostrar o resto

  14. #include<iostream> usingnamespacestd; main() { setlocale(LC_ALL,""); int numero, R_div2, R_div3; cout<<"\n\nEntre com o número a ser testado : "; cin>>numero; R_div2=numero%2; R_div3=numero%3; if((R_div2==0)&&(R_div3==0)) cout<<"\n\nO número "<<numero<<" é divisivel por 2 e por 3 simultaneamente\n\n"; else { if(R_div2==0) { cout<<"\n\nO número "<<numero<<" é divisivel por 2"; cout<<"\nO resto do número é : "<<R_div2; } else }

  15. { cout<<"\n\nO número "<<numero<<" não é divisivel por 2"; cout<<"\nO resto do número é : "<<R_div2; } if(R_div3==0) { cout<<"\n\n\nO número "<<numero<<" é divisivel por 3"; cout<<"\nO resto do número é : "<<R_div3<<"\n\n"; } else { cout<<"\n\n\nO número "<<numero<<" não é divisivel por 3"; cout<<"\nO resto do número é : "<<R_div3<<"\n\n"; } } system("pause"); }

More Related