/*________________________________________________________________

   Libro: EMPEZAR DE CERO A PROGRAMAR EN LENGUAJE C
   Ejercicio Propuesto 13.20: Lanzar un dado hasta sumar 21 ó más
   
   Web del Autor: http://www.carlospes.com
  ________________________________________________________________*/

#include <stdio.h>

int main()
{
   int anterior, contador, puntuacion, suma;

   contador = 0;
   anterior = 0;
   suma = 0;

   do
   {
      printf( "\n   Introduzca puntuacion (1-6): " );
      scanf( "%d", &puntuacion );

      /* Filtramos la puntuación */
      while ( puntuacion < 1 || puntuacion > 6 )
      {
         printf( "   ERROR: Puntuacion incorrecta." );
         printf( "\n   Introduzca puntuacion (1-6): " );
         scanf( "%d", &puntuacion );
      }

      /* Actualizamos la suma */
      if ( puntuacion == 6 && anterior == 6 )
      {
         suma += 7;
         anterior = 7;
      }
      else
         if ( puntuacion == 6 && anterior == 7 )
         {
            suma = 0;
            anterior = 0;
         }
         else
         {
            suma += puntuacion;
            anterior = puntuacion;
         }

      printf( "   Suma = %d\n", suma );
      contador++;

   } while ( suma < 21 );

   printf( "\n   Enhorabuena! Ha utilizado %d lanzamientos para sumar 21 o mas.",
           contador );

   return 0;
}