Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - sec21

#1
Programación C/C++ / Ayuda programa c++
18 Febrero 2014, 19:58 PM
Hola a todos estoy intentando crear un programilla que tras introducir los tiempos que han tardado una serie de personas al llegar a la meta de una carrera, nos indique el nombre de la persona que lha ganado y el tiempo medio (en segundos) de todas.




Tras hacer los cálculos necesarios para obtener los resultados finales, se preguntara si se desea introducir los datos de otra persona (obliga a que tecleen una S o N no importando que sea mayúscula o minúscula)
Si se responde con una S, el programa repetirá de nuevo el proceso. Solo cuando se teclee una N se mostrara una segunda pantalla mostrando el nombre de la persona que ha llegado en menos tiempo y el tiempo medio (en segundos) de todas las personas que han participado





Mi codigo es este : #include <iostream.h>
#include <conio.h>
#include <ctype.h>
#include <stdio.h>
#include <string.h>

void main()
{
   int hora, minuto, segundo, total1, total2, total;
   char afir, nombre1[20], nombre2[20],campeon[20];

  total1=0;
  total2=0;

  cout<<"\tIntroduce el nombre de la primera persona\n";
  gets(nombre1);
   cout<<"\tHora(0..23) ...: ";
   cin>>hora;
   cout<<"\tMinutos(0..59).: ";
   cin>>minuto;
   cout<<"\tSegundos(0..59): ";
   cin>>segundo;
   total1=((hora*3600)+(minuto*60)+segundo);

 do{cout<<"¿Otra persona? (S o N)";
    cin>>afir;
   }while (toupper(afir=='S') || toupper(afir=='N'))

 if (afir=='N') then{
  cout<<"\nNombre campeón/a.........: "<<nombre1;
   cout<<"\nSegundos que ha tardado .: "<<total1;
   }

 else{
 
 do{
   cout<<"\tIntroduce el nombre de la persona siguiente\n";
   gets(nombre2);
   cout<<"\tHora(0..23) ...: ";
   cin>>hora;
   cout<<"\tMinutos(0..59).: ";
   cin>>minuto;
   cout<<"\tSegundos(0..59): ";
   cin>>segundo;
   total2=(hora*3600+minuto*60+segundo);

  do{cout<<"¿Otra persona? (S o N)";
    cin>>afir;
   }while (toupper(afir=='S') || toupper(afir=='N'))
     }

  if (total1>total2) then{
        total2=total;
        strcpy(campeon, nombre2);
  }

  else{
      total1=total;
      strcpy(campeon, nombre1);
  }

   }while (afir=='N')

      cout<<"\nNombre campeón/a.........: "<<campeon;
   cout<<"\nSegundos que ha tardado .: "<<total;

}



si alguien puede corregirlo por favor estaría muy agradecido!!!

Gracias