Buscar

Aula 9 C++

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

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
1
AULA 7
CONTROLE DE FLUXO
ESTRUTURA CONDICIONAL 3
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 = 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
PN
DIA
TIPO
entradas
PREÇO FINAL
PF
PF = 3.00 * 1.2 = 3.60
PF = 3.60 + 3.00 * 0,13 = 3.99
3,00
5
L
3.99
QUAL TESTE ‘PRIMEIRO’?
DIA = DOMINGO
Não
só devemos fazer teste se for
 para calcular algo
#include <iostream>
#include <string>
using namespace std;
main()
{
 float PN, PF;
 int DIA;
 string TIPO;
 cout<<"Digite o preco normal \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
PN
DIA
TIPO
PF
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
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 
COMANDO CASE - SWITCH
 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; 
 } 
RESPOSTA deve ser do TIPO int ou 
char (apenas um caracter)
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;
 }
 }
 }
 }
 }
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;
}
Exemplo: Em uma financeira para cada tipo(1 a 5) 
de empréstimo: tem que ser aplicado uma taxa diferenciada
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;
 }
 }
 }
 }
 }
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;
}
Exemplo: Em uma financeira para cada tipo(1 a 5) 
de empréstimo: tem que ser aplicado uma taxa diferenciada
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
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
Menu
Símbolo
Operação
1
+
Adição
2
-
Subtração
3
*
Multiplicação
4
/
Divisão
#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;   
Menu
Símbolo
Operação
1
+
Adição
2
-
Subtração
3
*
Multiplicação
4
/
Divisão
    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
Menu
Símbolo
Operação
1
+
Adição
2
-
Subtração
3
*
Multiplicação
4
/
Divisão

Continue navegando