Necesito ayuda

Iniciado por Quieroaprenderprogramacio, 17 Febrero 2019, 06:07 AM

0 Miembros y 1 Visitante están viendo este tema.

K-YreX

Bueno, vamos a ir revisando cosas del código:
Lo primero de todo, cuando pongas un código usa las etiquetas de código GeSHi.
  • <gets()> no es muy recomendable para guardar cadenas ya que es poco seguro. Su variante más segura es <fgets()> (tiene otros parámetros pero puedes encontrar información al respecto en cualquier web/libro.

  • En el filtro del <do while> tienes un condicional <if> vacío. Además es más usual hacerlo con (s/n) y así sólo tienes que manejar un caracter en al comprobación y no una cadena.
    Código (cpp) [Seleccionar]

    char opcion;
    do{
        cout << "Empezar (s/n): ";
        cin >> opcion;
    }   while(opcion != 's' || opcion != 'S');


  • Te recomiendo usar strings en lugar de cadenas de caracteres estilo C. Son más fáciles de manejar y no tienes que reservar arrays de tamaño aleatorio.

  • Te recomiendo usar <getline()> mejor que <gets()> o <fgets()>. También puedes encontrar cómo funciona en webs/libros.

  • Usa nombres de variables que te ayuden a seguir el programa. Imagina un programa enorme donde usas <t> <r1> <r2>... :-\ Mejor nombres como <puntuacion> <respuesta_usuario> <respuesta_correcta>...

  • No es necesario el 0 en <t = 0 + 10> ni en <t = 0 - 5>. Como mucho para acumular resultados pero en ese caso sería <t += 10> y <t -= 5>.

  • Cambia el <system("pause")> por <cin.get()>. La función va a ser la misma y evitas hacer una llamada al sistema totalmente innecesaria y costosa.
Código (cpp) [Seleccionar]

cout << "Todos tenemos un defecto, un error en nuestro código" << endl;