Programación General > C++ Builder
problemas con archivos en c++
(1/1)
nekiumi:
hola
estoy haciendo un programa de c++ builder 6,el cual me han pedido buscar que no se repita la programación de una sala en un mismo día,es decir en una misma fecha
por ejemplo
fecha:13/5/2009
sala:3
//otra fecha
fecha:13/5/2009
sala:3
como es la misma sala pero en el mismo dia
se repite lo que me piden
fecha:
y sala de nuevo
pero no hay problema si se repite solo la fecha pero si la fecha y la sala juntas
no me sale porque cuando trato de buscar la fehca y la sala para ver ke no se repitan me dice que no puedo compara valores enteros
mi codigo es algo asi
int Busca_de_Fecha(int *cdia,int *cmes,int *canio)
{
FILE *pF;
TProgramacion P;
int Esta,pos;
if( (pF=fopen("Programacion.dat","r+b"))==NU... )
{ printf("No se pudo abrir el archivo de Programacion.dat ");
getch();
return -1;
}
else
{
Esta=0;
while( (!Esta) && (fread(&P,sizeof(TProgramacion),1,pF)>0)...
if((P.Dia,P.Mes,P.Anio)==(cdia,cmes,cani... esta mal ,porque son enteros
Esta=1;
if(Esta)
pos= (ftell(pF)/sizeof(TProgramacion))-1;
else
pos=-1;
fclose(pF);
return(pos);
}
}
alguna ayuda pliss
alfaman:
Hola si entendi bien cre que te estas complicando las cosas, si nada mas estas comparando dos cosas, peus create nada mas 2 variables donde una sea para las salas y la otra para las fechas y simplemente crea una variable mas para los resultados y nada mas hasles una conidcion de que no pueden coinsidir en la misma fecha y listo.
Ahora con el problema que te dice sobre que no puedes comparar dos variables de tipo entero, aplicales una mascara de string y con eso te las deve jalar en el momento de hacer la comparacion, para plicar la mascara sonlo pon lo siguiente
--- Código: C++ --- int a,b;String res;res=(String)a+(String)b; //Al hacer esto pones una mascara la cual considera a la variable entera como cadena, solo en la linea donde las aplicas.
Saludos.
Navegación
Ir a la versión completa