Duda URGENTE
Publicado por Josu (8 intervenciones) el 08/12/2010 15:06:01
Buenas tardes.
Mi nombre es Josu y tengo una duda existencial, jeje.
Estoy empezando con el c# y me han mandado un ejercicio el cual recibe dos fechas, una inicial y una final. Pide también una tercera fecha y tiene que comprobar si esa tercera fecha esta comprendida entre las dos primeras.
Bien, el caso es que me funciona CASI siempre, y como bien dice mi profesor, o funciona o no funciona... por lo que no me funciona, jeje.
Bien, tengo 4 funciones:
* una para pedir datos
* dos para comprobar que la fecha introducida es valida, comprueba bisiestos
* El método Main, el cual da la respuesta
* y el método mas importante, en el cual está el error, ahora os lo pongo.
Mi problema es que meto de fecha inicial 01-01-00, de fecha final 01-01-01 y de fecha a comprobar el 15-02-00 y el resultado me da que no está comprendida entre las otras dos...
Pueden ayudarme a ver donde está el error? soy incapaz de sacarlo con pseudocódigo, asi que menos por código.
Gracias a todos de antemano.
static bool FechaIncluida(int añoo, int mes, int dia, int iaño, int imes, int idia, int faño, int fmes, int fdia)
{
if ((iaño < añoo) && (iaño > faño)) return false;
else
{
if ((iaño == añoo) || (iaño == faño))
{
if ((imes >= mes) && (imes <= fmes))
{
return true;
}
else return false;
}
else
{
if ((iaño > añoo) && (iaño < faño))
{
return true;
}
else return false;
}
}
se que está mal, ya que lo compruebo en paso por paso, y me salta el error en el "if" del mes..
Mi nombre es Josu y tengo una duda existencial, jeje.
Estoy empezando con el c# y me han mandado un ejercicio el cual recibe dos fechas, una inicial y una final. Pide también una tercera fecha y tiene que comprobar si esa tercera fecha esta comprendida entre las dos primeras.
Bien, el caso es que me funciona CASI siempre, y como bien dice mi profesor, o funciona o no funciona... por lo que no me funciona, jeje.
Bien, tengo 4 funciones:
* una para pedir datos
* dos para comprobar que la fecha introducida es valida, comprueba bisiestos
* El método Main, el cual da la respuesta
* y el método mas importante, en el cual está el error, ahora os lo pongo.
Mi problema es que meto de fecha inicial 01-01-00, de fecha final 01-01-01 y de fecha a comprobar el 15-02-00 y el resultado me da que no está comprendida entre las otras dos...
Pueden ayudarme a ver donde está el error? soy incapaz de sacarlo con pseudocódigo, asi que menos por código.
Gracias a todos de antemano.
static bool FechaIncluida(int añoo, int mes, int dia, int iaño, int imes, int idia, int faño, int fmes, int fdia)
{
if ((iaño < añoo) && (iaño > faño)) return false;
else
{
if ((iaño == añoo) || (iaño == faño))
{
if ((imes >= mes) && (imes <= fmes))
{
return true;
}
else return false;
}
else
{
if ((iaño > añoo) && (iaño < faño))
{
return true;
}
else return false;
}
}
se que está mal, ya que lo compruebo en paso por paso, y me salta el error en el "if" del mes..
Valora esta pregunta
0