elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Me da un error en una llave de cierre, que pasa?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Me da un error en una llave de cierre, que pasa?  (Leído 3,955 veces)
Anastacio

Desconectado Desconectado

Mensajes: 111



Ver Perfil
Me da un error en una llave de cierre, que pasa?
« en: 29 Febrero 2012, 02:23 am »

Código:
#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;

}   
   
   
 

Me da un toco de errores por la ultima llave, la de cierre del programa.
  expected `}' at end of input
 expected `;' at end of input
  expected `)' at end of input
 expected `(' at end of input
  expected `while' at end of input

Porque exactamente me dice esto?

sospecho de los do while, me he armado un lio para intentar que funcionen, sospecho que asi estan bien, pero tambien pueden estar mal.

Me dan una mano?
gracias de antemano


En línea

You, stop to close my post, you were novice too!!!!!!!!!!!!
x64core


Desconectado Desconectado

Mensajes: 1.908


Ver Perfil
Re: Me da un error en una llave de cierre, que pasa?
« Respuesta #1 en: 29 Febrero 2012, 02:49 am »

en la primera vista:

Código:
    do{
    do{

que se supone que es eso?
la ultima llave es el cierre de uno de esos do...
usa los tabuladores


En línea

Anastacio

Desconectado Desconectado

Mensajes: 111



Ver Perfil
Re: Me da un error en una llave de cierre, que pasa?
« Respuesta #2 en: 29 Febrero 2012, 03:05 am »

O sea que si pongo una llave mas se soluciona?

con los dos do seguidos intente meter un do dentro de otro, pero me parece que eso no se puede hacer, igual probe.

No se me ocurrio otra manera de hacer que vuelva al comienzo de diversas maneras. Saludos y gracias de antemano.
En línea

You, stop to close my post, you were novice too!!!!!!!!!!!!
x64core


Desconectado Desconectado

Mensajes: 1.908


Ver Perfil
Re: Me da un error en una llave de cierre, que pasa?
« Respuesta #3 en: 29 Febrero 2012, 03:12 am »

naa... ya me fije el ultimo if le faltaba y te faltaba el ';' al primer while

Código:
#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;

}   
En línea

m0rf


Desconectado Desconectado

Mensajes: 828


BACK!


Ver Perfil
Re: Me da un error en una llave de cierre, que pasa?
« Respuesta #4 en: 29 Febrero 2012, 06:42 am »

Como es que incluyes windows.h?
En línea

Si todos fuéramos igual de inteligentes no existiría la mediocridad porque no podríamos apreciarla. Aprecias la mediocridad?
rir3760


Desconectado Desconectado

Mensajes: 1.639


Ver Perfil
Re: Me da un error en una llave de cierre, que pasa?
« Respuesta #5 en: 29 Febrero 2012, 06:53 am »

No es necesario. Basta con incluir el encabezado <stdlib.h>.

Un saludo
En línea

C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language
Anastacio

Desconectado Desconectado

Mensajes: 111



Ver Perfil
Re: Me da un error en una llave de cierre, que pasa?
« Respuesta #6 en: 1 Marzo 2012, 02:16 am »

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.
En línea

You, stop to close my post, you were novice too!!!!!!!!!!!!
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
llave usb « 1 2 »
Ingeniería Inversa
jdws88 18 22,554 Último mensaje 24 Abril 2013, 17:38 pm
por Dante1986
No conecta bien a db, o algo pasa.. tambien da un error al cargar la db
Bases de Datos
XXXXXX 6 4,535 Último mensaje 17 Mayo 2010, 07:43 am
por XXXXXX
LLAVE USB
Dudas Generales
jumamudi 2 4,154 Último mensaje 23 Noviembre 2010, 20:53 pm
por jumamudi
Error con photoshop he puesto video de lo que pasa. « 1 2 »
Software
anonimo12121 10 5,487 Último mensaje 7 Abril 2011, 16:17 pm
por anonimo12121
Protección con llave HASP sin la llave original
Hacking
fperea 0 7,438 Último mensaje 1 Enero 2012, 21:31 pm
por fperea
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines