Relogio
Publicado por Fernando Krein Pinheiro (última atualização em 09/06/2011)
[ Hits: 10.904 ]
Homepage: www.ferpinheiro.wordpress.com
O objetivo do script é: /*Crie uma classe em C++ chamada Relogio para
armazenar um horário, composto por hora, minuto
e segundo. A classe deve representar esses componentes
de horário e deve apresentar os métodos descritos a seguir:
um método chamado setHora, que deve receber o horário
desejado por parâmetro (hora, minuto e segundo);
um método chamado getHora para retornar o horário atual,
através de 3 variáveis passadas por referência;
um método para avançar o horário para o próximo segundo
(lembre-se de atualizar o minuto e a hora, quando for o caso).*/
#include <iostream>
#include <stdio.h>
#include <conio.h>
#include <string.h>
using namespace std;
class relogio
{
private:
int hora, minutos, segundos;
public:
void set_hora(int, int, int);
void get_hora(int *, int *, int *);
void avanca();
};
void relogio::set_hora(int hor, int min, int seg)
{
if(seg>=60)
{
seg-=60;
min+=1;
}
if(min>=60)
{
min-=60;
hor+=1;
}
if(hor>=24)
hor-=24;
hora=hor;
minutos=min;
segundos=seg;
}
void relogio::get_hora(int *hor, int *min, int *seg)
{
*hor=hora;
*min=minutos;
*seg=segundos;
}
void relogio::avanca()
{
segundos+=1;
if(segundos>=60)
{
segundos-=60;
minutos+=1;
}
if(minutos>=60)
{
minutos-=60;
hora+=1;
}
if(hora>=24)
hora-=24;
}
int main()
{
relogio rel;
char op;
rel.set_hora(0,0,0);
do
{
cout<<"\n\n\t\tHORA(H) \n\t\MOSTRA(M)\n\t\tAVANCAR(A)\n\n\t\tOPCAO [ ]\b\b";
cin>>op;
switch(op)
{
case'H': case'h':
int hora, minuto, segundo;
cout<<"\n\n\t\tQUE HORAS SAO: "; cin>>hora;
cout<<"\n\t\tQUE MINUSTOS SAO: "; cin>>minuto;
cout<<"\n\t\tQUE SEGUNDOS SAO: "; cin>>segundo;
rel.set_hora(hora, minuto, segundo);
break;
case'M': case'm':
rel.get_hora(&hora, &minuto, &segundo);
cout<<"\n\n\t\tHora: "<<hora<<":"<<minuto<<":"<<segundo;
getch();
break;
case'A': case'a':
rel.avanca();
break;
default:
return 0;
break;
}
}while(1!=0);
}
Parte 5 (ORDENANDO NUMEROS) - Sessão de estudo sobre MATRIZES
Estrutura de dados em C -> Fila Circular com operador módulo
Nenhum comentário foi encontrado.
Como rodar o Folding@home no Linux
Criando um painel de controle (Dashboard) para seu servidor com o Homepage
O Abismo entre o Código e o Chão: Saltos Tecnológicos e a Exclusão Estrutural no Brasil
Instalar e Configurar a santíssima trindade (PAP) no Void Linux
NixOS + NVIDIA antiga: como sobreviver ao driver 595 (GTX 750 Ti / Maxwell)
Conhecendo o tmux: Multiplexador de Terminal
Acessando página do Syncthing fora da máquina local
[Resolvido] Meu monitor suporta 100fps. Por que o máximo é 60fps nos jogos?
OpenClaude - toda IA joga mais que neymar (4)
Novos requisitos de sistema para a versão 26.04 (4)









