140 likes | 303 Views
Aula 05. 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. Estrutura Seqüencial 2 b. INFORMÁTICA E COMPUTAÇÃO CMP 1060 AULA 5. Desafio
E N D
Pontifícia Universidade Católica de Goiás PUC GOIÁS Departamento de ComputaçãoInformática e Computação Professor: MSc. Mário Oliveira Orsi Cesar Augusto da Rocha Magalhães
Estrutura Seqüencial 2 b INFORMÁTICA E COMPUTAÇÃOCMP 1060 AULA 5
Desafio Entrar com horário do início da viagem em horas, minutos e segundos e horário do fim da viagem dentro de um mesmo dia. Calcular e exibir a duração da viagem em horas, minutos e segundos. por exemplo: qual a duração para inicio 19h20min00seg fim22h30min10seg
DESAFIO Entrar com horário do início da viagem em horas, minutos e segundos e horário do fim da viagem dentro de um mesmo dia. Calcular e exibir a duração da viagem em horas, minutos e segundos. por exemplo: qual a duração para inicio 19h20min00seg fim22h30min10seg ENTRADAS Análise: Transformartudoemsegundos SI = HI*3600 + MI*60 + SI SF = HF*3600 + MF*60 + SF Calcular a duraçãoemsegundos DUR = SF – SI Calcular e mostrar a duraçãoemhoras(HD) min(MD) seg(SD) HD = DUR / 3600 MD = DUR%3600 /60 SD = (DUR%3600)%60
// programa CRONOMETRO #include <iostream> usingnamespacestd; #define MINSEG 3600 #define SEG 60 main() { setlocale(LC_ALL,""); int tempo, horas, minutos, segundos; //Hora Inicio – HI, Min Inicio – MI, Seg Inicio – SI //Hora Final – HF, Min Final – MF, Seg Final – SF Inthi, mi, si, hf, mf, sf; cout<<"\nPrograma de Cálculo de tempo em função da hora de saida e hora de chegada\n\n"; cout<< "Informe a hora inicial de saida: "; cin>>hi; cout<< "Informe os minutos iniciais de saida: "; cin>>mi; cout<< "Informe os segundos iniciais de saida: "; cin>>si; cout<< "\nInforme a hora de chegada: "; cin>>hf; cout<< "Informe os minutos de chegada: "; cin>>mf; cout<< "Informe os segundos de chegada: "; cin>>sf; si=hi*MINSEG+mi*SEG+si; sf=hf*MINSEG+mf*SEG+sf; tempo=sf-si; horas = (tempo/MINSEG); minutos = ((tempo%MINSEG)/SEG); segundos = ((tempo%MINSEG)%SEG); cout<<"\nO tempo de viajem é "<< horas<< " horas, " << minutos<< " minutos e "<< segundos<< " segundos"<<"\n\n"; system("PAUSE"); }
numero invertido 587 785 unidade x100 +dezena x10 +centena ` Numero invertido Exercício 3 - Dado um número de três dígitos, desenvolver um algoritmo para invertê-lo e armazenando-o em uma outra variável. 587 785 7x100=700 +8 x10 = 80 +5 = 5` 785 587| 100 ` 87 5 587| 10 ` 7 58 87 | 10 ` 7 8 numero| 100 ` resto1 centena numero| 10 ` unidade quociente resto1 | 10 ` unidade dezena
unidade x100 +dezena x10 +centena ` Numero invertido // programa INVERTIDO #include <iostream> usingnamespacestd; main() { //estruturas de dados int NUMERO, INVERTIDO, DEZENA, CENTENA, UNIDADE; 7x100=700 +8 x10 = 80 +5 = 5` 785 // leia os dados de entrada cout<< "Informe o num de 3 alg para inverter: \n"; cin >> NUMERO; 587| 100 ` 87 5 587| 10 ` 7 58 87 | 10 ` 7 8 numero | 100 ` resto1 centena numero| 10 ` unidade quociente resto1 | 10 ` unidade dezena // resto entre NUMERO e 10 UNIDADE = NUMERO%10; // quociente ( resto do NUMERO e 10) e 10) DEZENA = NUMERO/10%10; // quociente entre NUMERO e 100 CENTENA = NUMERO / 100;
// inverter o número INVERTIDO = UNIDADE *100 + DEZENA *10 + CENTENA; unidade x100 +dezena x10 +centena ` Numero invertido //exiba os resultados de saída cout << "o numero invertido eh "<< INVERTIDO <<endl; system("PAUSE"); } invertido.exe 7x100=700 +8 x10 = 80 +5 = 5` 785
// programa INVERTIDO#include <iostream>usingnamespacestd;main(){//estruturas de dados int NUMERO, INVERTIDO, DEZENA, CENTENA, UNIDADE;// leia os dados de entrada cout<< "Informe o num de 3 alg para inverter: \n";cin >> NUMERO; // resto entre NUMERO e 10UNIDADE = NUMERO%10; // quociente ( resto do NUMERO e 10) e 10)DEZENA = NUMERO/10%10; // quociente entre NUMERO e 100CENTENA = NUMERO / 100; // inverter o número INVERTIDO = UNIDADE *100 + DEZENA *10 + CENTENA; //exiba os resultados de saída cout << "o numero invertido eh "<< INVERTIDO <<endl; system("PAUSE");}
// programa INVERTIDO A #include <iostream> usingnamespacestd; main() { setlocale(LC_ALL,""); //estruturas de dados int NUMERO, INVERTIDO, DEZENA, CENTENA, UNIDADE; // leia os dados de entrada cout<< "Informe o num de 3 algarismos para inverter: "; cin >> NUMERO; // obter o numero que corresponde a centena CENTENA = NUMERO/100; // obter o numero que corresponde a dezena DEZENA = NUMERO%100/10; // obter o numero que corresponde a unidade UNIDADE = ((NUMERO%100)%10); INVERTIDO = UNIDADE *100 + DEZENA *10 + CENTENA; //exiba os resultados de saída cout << "\no numero invertido é "<< INVERTIDO <<"\n\n"; system("PAUSE"); }
Exercício 4 - TROCA Fazer um programa para trocar, entre si, os valores das variáveis A e B. Usando uma variável auxiliar.
// programa TROCA #include <iostream> usingnamespacestd; main() { 5 3 5 3 5 3 5 5 //estruturas de dados int A, B, AUX; // leia os dados de entrada cout<< "Informe o valor da primeira variavel: \n"; cin >> A; cout<< "Informe o valor da segunda variavel: \n"; cin >> B; 3 3 Monitor Informe o.. primeiravariavel: //Trocar as variáveis AUX = A; A = B ; B = AUX; //Trocar as variáveis A = B ; B = A; 5 Informe o.. segunda variavel: 3
//exiba os resultados de saída cout << "o valor armazenado na variavel A eh "<< A <<endl; cout << "o valor armazenado na variavel B eh "<< B <<endl; system("PAUSE"); } troca.exe Monitor Informe o.. primeira variavel: 5 Informe o.. segunda variavel: 3 O valor … variavel A é 3 O valor … variavel B é 5