Gracias, primero me daba siempre el mismo numero, luego puse rand dentro de el segundo do y no hay problema, me falta ponerle un par de variantes float a la division.
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ú#include <stdio.h>
#include <windows.h>
#include <time.h>
int main()
{
int num1;
int num2;
int c;
int resultadojugador;
int resultado;
int repetidor;
int vida;
int nivel;
int contador;
int operacion;
operacion = 0;
num1 = 0;
num2 = 0;
repetidor = 0;
resultadojugador = 0;
contador = 0;
nivel = 0;
vida = 5;
resultado = 0;
c = 0;
system("color F1");
printf("Este programa prueba su Habilidad con las matematicas.\n");
printf("Elija un nivel\n");
printf("1.Facil\n");
printf("2.Medio\n");
printf("3.Dificil\n");
scanf("%d",&c);
if(c == 1)
{
nivel = 10;
}
if(c == 2)
{
nivel = 50;
}
if(c == 3)
{
nivel = 100;
}
srand( (unsigned)time( NULL ) );
num1 = rand() % nivel;
num2 = rand() % nivel;
getchar();
printf("Con que desea comenzar\n");
printf("1.Suma\n");
printf("2.Resta\n");
printf("3.Multiplicacion\n");
printf("4.Division\n");
scanf("%d",&operacion);
do{
do{
if(operacion == 1)
{
printf("\nEl primer numero es\n%d",num1);
printf("\nEl segundo entero es\n%d",num2);
printf("\nSume los dos numeros y escriba el resultado\n");
scanf("%d",&resultadojugador);
resultado = num1 + num2;
if(resultadojugador == resultado)
{
printf("Has ganado\n");
contador = contador + 1;
printf("Numero de vidas restantes\n%d\n",vida);
getchar();
}
if(resultadojugador != resultado)
{
printf("Has perdido\n");
contador = contador + 1;
vida = vida - 1;
printf("Numero de vidas restantes\n%d\n",vida);
printf("El resultado correcto era\n%d", resultado);
getchar();
}
}
if(operacion == 2)
{
printf("\nEl primer numero es\n%d",num1);
printf("\nEl segundo entero es\n%d",num2);
printf("\nReste los dos numeros y escriba el resultado\n");
scanf("%d",&resultadojugador);
resultado = num1 - num2;
if(resultadojugador == resultado)
{
printf("Has ganado\n");
contador = contador + 1;
printf("Numero de vidas restantes\n%d\n",vida);
getchar();
}
if(resultadojugador != resultado)
{
printf("Has perdido\n");
contador = contador + 1;
vida = vida - 1;
printf("Numero de vidas restantes\n%d\n",vida);
printf("El resultado correcto era\n%d", resultado);
getchar();
}
}
if(operacion == 3)
{
printf("\nEl primer numero es\n%d",num1);
printf("\nEl segundo entero es\n%d",num2);
printf("\nMultiplique los dos numeros y escriba el resultado\n");
scanf("%d",&resultadojugador);
resultado = num1 * num2;
if(resultadojugador == resultado)
{
printf("Has ganado\n");
contador = contador + 1;
printf("Numero de vidas restantes\n%d\n",vida);
getchar();
}
if(resultadojugador != resultado)
{
printf("Has perdido\n");
contador = contador + 1;
vida = vida - 1;
printf("Numero de vidas restantes\n%d\n",vida);
printf("El resultado correcto era\n%d", resultado);
getchar();
}
}
if(operacion == 4)
{
printf("\nEl primer numero es\n%d",num1);
printf("\nEl segundo entero es\n%d",num2);
printf("\nDivide los dos numeros y escriba el resultado\n");
scanf("%d",&resultadojugador);
resultado = num1 / num2;
if(resultadojugador == resultado)
{
printf("Has ganado\n");
contador = contador + 1;
printf("Numero de vidas restantes\n%d\n",vida);
getchar();
}
if(resultadojugador != resultado)
{
printf("Has perdido\n");
contador = contador + 1;
vida = vida - 1;
printf("Numero de vidas restantes\n%d\n",vida);
printf("El resultado correcto era\n%d", resultado);
getchar();
}
}while(vida < 0, contador < 10)
printf("Deseas continuar, presiona 1. Si quieres salir, 2");
scanf("%d",&repetidor);
}while(repetidor == 1);
return 0;
}