Ver Mensaje Individual
  #2 (permalink)  
Antiguo 28/08/2012, 17:43
ecfisa
 
Fecha de Ingreso: julio-2012
Mensajes: 133
Antigüedad: 12 años, 5 meses
Puntos: 22
Respuesta: Piedra, Papel, Tijeras (C) Problema

Hola harryarcoiris.

Proba de este modo:
Código C:
Ver original
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. int main(int argc, char* argv[])
  5. {
  6.   char *v[3] = {"piedra","papel","tijeras"};
  7.   int ju, pc, jugados = 1, ganados = 0, perdidos = 0;
  8.  
  9.   randomize();
  10.   do {
  11.     printf("Jugada %d, elija una opcion (1, 2, 3) G:%d P:%d\n",jugados, ganados, perdidos);
  12.     printf("1. Piedra\n");
  13.     printf("2. Papel\n");
  14.     printf("3. Tijeras\n");
  15.     do
  16.       scanf("%d",&ju);
  17.     while ((ju == '\n') && (ju != '1' || ju != '2' || ju != '3'));
  18.     while(getchar()!='\n');
  19.     ju--;
  20.     pc = rand() % 3;
  21.     printf("Ud eligio %s, la PC eligio %s => ",v[ju], v[pc]);
  22.     if (ju == pc)
  23.       printf("Hay empate\n");
  24.     else if ((ju == 0 && pc == 2)||(ju == 1 && pc == 0)||(ju == 2 && pc == 1)) {
  25.       printf("Ud. gana\n");
  26.       ganados++;
  27.     }
  28.     else {
  29.       printf("La PC gana\n");
  30.       perdidos++;
  31.     }
  32.     jugados++;
  33.     printf("-----------------------------\n");
  34.   } while (ganados < 5 && perdidos < 5);
  35.   if (ganados > perdidos)
  36.     printf("Ud ha ganado en %d intentos.",jugados);
  37.   else
  38.     printf("Ud ha perdido en %d intentos.",jugados);
  39.   getchar();
  40.   return 0;
  41. }

Saludos.