Problema con programa

Iniciado por XV8, 18 Diciembre 2010, 14:52 PM

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

XV8

Llevo ya bastante tiempo dándole vueltas a este programa que siempre me da error al compilar, si ven el fallo avisenme, yo seguire buscandolo. Gracias.

//Programa de practica que sirve para crear una pequeña base de datos sobre videojuegos.

#include <iostream>
#include <stdio.h>

using namespace std;

const int MAXNAME = 25;
const int MAXARRAY = 10;

   struct juegos
   {
   char nombre [MAXNAME];
   int año;
   int genero;
   float nota;
   } juego [MAXARRAY];
   
int main (void)
{
int i = 0;
   while (i<MAXARRAY)
   {
   cout << "Introduzca el nombre del videojuego: "[ << i+1 << ]" : ";
   cin>> juego.nombre;
   
   cout << "Introduzca año de venta del juego "[ << i+1 << ]" : ";
   cin>> juego.año;
   
   cout << "Escriba el genero al que pertenece el juego "[ << i+1 << ]" : ";
   cin>> juego.genero;
   
   cout << "Nota que le asignas al juego "[ << i+1 << ]" : ";
   cin>> juego.nota;
   fflush(stdin);
   
   i++;
   }
   
   i=0;
   while (i<MAXARRAY)
   {
   cout << "Nombre del videojuego es "[ << i+1 << ]" : " << juego.nombre;
   cout << "Año de venta del videjuego "[ << i+1 << ]" :" << juego.año;
   cout << "El genero del videojuego"[ << i+1 << ]" es: " << juego.genero;
   cout << "La nota del videojuego "[ << i+1 << ]" es: " << nota.nota;
   cout<< ":::::::::::::::::::::::::::::::::::::::::::::::::::" << endl;
   i++
   }
return 0;
}
   

xassiz~

Utiliza el GeShi.
Código (cpp,46) [Seleccionar]
#include <iostream>
#include <stdio.h>

using namespace std;

const int MAXNAME = 25;
const int MAXARRAY = 10;

   struct juegos
   {
   char nombre [MAXNAME];
   int año;
   int genero;
   float nota;
   } juego [MAXARRAY];
   
int main (void)
{
int i = 0;
   while (i<MAXARRAY)
   {
   cout << "Introduzca el nombre del videojuego: "[ << i+1 << ]" : ";
   cin>> juego.nombre;
   
   cout << "Introduzca año de venta del juego "[ << i+1 << ]" : ";
   cin>> juego.año;
   
   cout << "Escriba el genero al que pertenece el juego "[ << i+1 << ]" : ";
   cin>> juego.genero;
   
   cout << "Nota que le asignas al juego "[ << i+1 << ]" : ";
   cin>> juego.nota;
   fflush(stdin);
   
   i++;
   }
   
   i=0;
   while (i<MAXARRAY)
   {
   cout << "Nombre del videojuego es "[ << i+1 << ]" : " << juego.nombre;
   cout << "Año de venta del videjuego "[ << i+1 << ]" :" << juego.año;
   cout << "El genero del videojuego"[ << i+1 << ]" es: " << juego.genero;
   cout << "La nota del videojuego "[ << i+1 << ]" es: " << nota.nota;
   cout<< ":::::::::::::::::::::::::::::::::::::::::::::::::::" << endl;
   i++
   }
return 0;
}


Debes leer los errores que te dice el compilador.

pucheto

#2
Y cual es el error que et da?
Mirandolo rapido, te falta el [ i ] cuando indexas el arreglo 'juego'.
Código (c++) [Seleccionar]
cout << "Introduzca el nombre del videojuego: "[ << i+1 << ]" : ";
  cin>> juego[i].nombre;
 
  cout << "Introduzca año de venta del juego "[ << i+1 << ]" : ";
  cin>> juego[i].año;
 
  cout << "Escriba el genero al que pertenece el juego "[ << i+1 << ]" : ";
  cin>> juego[i].genero;
 
  cout << "Nota que le asignas al juego "[ << i+1 << ]" : ";
  cin>> juego[i].nota;


y los [  ] estan fuera de lugar...
Código (c++) [Seleccionar]
cout << "Nombre del videojuego es [" << i+1 << "] : " << juego[i].nombre;

XV8

Borre todos los [] y ahora solo me da un error:
expected ";" before "}" token
que es la llave } que cierra el ultimo bucle while y que esta justo antes de return 0;

XV8

Nada ya compila, pero al introducir el genero se fastidia, cuando lo arregle lo subo y asi por lo menos sirve de ejemplo para otros.

XV8

Es es el programa ya correcto y le añadí un par de EXIT_FAILURE a ver si se me ocurre algo mas para meterle. Gracias por la ayuda.

#include <iostream>
#include <stdio.h>
#include <stdlib.h> //Libreria para poder usar el EXIT_FAILURE.

using namespace std;

const int MAXNAME = 25;
const int MAXARRAY = 10;

struct juegos
{
char nombre [MAXNAME];
int año;
int genero;
float nota;
} juego [MAXARRAY];

int main (void)
{
int i = 0;
while (i<MAXARRAY)
{
cout << "Introduzca el nombre del videojuego: " << i+1 << " : ";
cin>> juego[i].nombre;

cout << "Introduzca año de venta del juego " << i+1 << " : ";
cin>> juego[i].año;

cout << "Escriba el género al que pertenece el juego " << i+1 << " : Acción(1),Estrategia(2), Rol(3), Arcade(4)" << endl;
cin>> juego[i].genero;
if (juego[i].genero < 5){}
else {cout << "Debe elegir un genero disponible, intentelo de nuevo" << endl;
exit(EXIT_FAILURE);}

cout << "Nota que le asignas al juego " << i+1 << " : ";
cin>> juego[i].nota;
if (juego[i].nota < 11) {}
else { cout << "La nota solo puede ser del 1 al 10" << endl;
exit(EXIT_FAILURE);}
cout << ":::::::::::::::::::::::::::::::::::::::::::::::::" << endl;
fflush(stdin);

i++;
}

i=0;
while (i<MAXARRAY)
{
cout << "Nombre del videojuego es " << i+1 << " : " << juego[i].nombre;
cout << "Año de venta del videjuego " << i+1 << " :" << juego[i].año;
cout << "El genero del videojuego" << i+1 << " es: " << juego[i].genero;
cout << "La nota del videojuego " << i+1 << " es: " << juego[i].nota;
cout<< ":::::::::::::::::::::::::::::::::::::::::::::::::::" << endl;
i++;
}
return 0;
}