Ir para conteúdo
Fórum Script Brasil

elvis presley

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Sobre elvis presley

elvis presley's Achievements

0

Reputação

  1. Bom Dia , estou tentando resolver este problema aqui abaixo: Faça com que horários (registro horário) possam ser lidos com cin, exibidos com cout e subtraídos com o operador de subtração, operator-(). O resultado da subtração deve ser um valor representando a diferença em minutos. Para simplificar, considere que os horários estão sempre dentro de um mesmo dia. Meu código ficou assim: #include<iostream> using namespace std; struct horario { int hora; int minuto; }; istream& operator>>(istream&, horario&); ostream& operator<<(ostream&, horario); horario operator-(horario, horario); int main() { horario h1, h2; cin >> h1; cin >> h2; cout << (h1 - h2); } istream & operator>>(istream & is, horario& tempo){ char ponto =':'; is >> tempo.hora; is >> ponto; is >> tempo.minuto; return is; } ostream & operator<<(ostream & os, horario tempo) { os << tempo.hora; os << tempo.minuto; return os; } horario operator-(horario h1, horario h2){ horario tempo; tempo.hora = (h2.hora - h1.hora) * 60; tempo.minuto = h2.minuto - h1.minuto; tempo.minuto += tempo.hora; tempo.hora = 0; return tempo; } So que não consigo chegar no padrão de saida que o programa pede (15 mim) mas o meu sai com 015 e tambem ao mostrar os horarios eu não consigo mostrar com todas as casas decimais por exempl 12:30, fica 12:3 alguém poderia me ajudar grato
×
×
  • Criar Novo...