Buenas tardes a tod@s,
Estoy haciendo un programa y tengo una función con bastantes sentencias if-else, creo que se podría reducir el código con la sentencia switch-case, pero no me funciona (creo que el problema está en reconocer cadenas de caracteres).
A continuación os dejo la función por si alguien sabe como ponerlo con la sentencia switch-case.
Un saludo!!
Estoy haciendo un programa y tengo una función con bastantes sentencias if-else, creo que se podría reducir el código con la sentencia switch-case, pero no me funciona (creo que el problema está en reconocer cadenas de caracteres).
A continuación os dejo la función por si alguien sabe como ponerlo con la sentencia switch-case.
Un saludo!!
Código (c) [Seleccionar]
int Comprobar_Archivo_Conf(char *cadena,int parametro)
{
if (strcmp("energia_bolas_verdes",cadena)==0)
{
if (parametro>=500&¶metro<=1500)
{
segmento_01[ENERGIA_BOLAS_VERDES]=parametro;
return 1;
}
}
else
if (strcmp("num_bolas_rojas",cadena)==0)
{
if (parametro>3&¶metro<7)
{
segmento_01[NUM_BOLAS_ROJAS]=parametro;
return 1;
}
}
else
if (strcmp("intervalo_rojas",cadena)==0)
{
if (parametro>=3&¶metro<=6)
{
segmento_01[INTERVALO_ROJAS]=parametro;
return 1;
}
}
else
if (strcmp("intervalo_azules",cadena)==0)
{
if (parametro>=3&¶metro<=6)
{
segmento_01[INTERVALO_AZULES]=parametro;
return 1;
}
}
else
if (strcmp("num_bolas_negras",cadena)==0)
{
if (parametro>=3&¶metro<=5)
{
segmento_01[NUM_BOLAS_NEGRAS]=parametro;
return 1;
}
}
else
if (strcmp("intervalo_negras",cadena)==0)
{
if (parametro>=3&¶metro<=6)
{
segmento_01[INTERVALO_NEGRAS]=parametro;
return 1;
}
}
else
if (strcmp("bolas_verdes_pequenas",cadena)==0)
{
if (parametro>=2&¶metro<=5)
{
segmento_01[BOLAS_VERDES_PEQUENAS]=parametro;
return 1;
}
}
else
if (strcmp("puntuacion_t1_roja",cadena)==0)
{
if (parametro==100)
{
segmento_01[PUNTUACION_T1_ROJA]=parametro;
return 1;
}
}
else
if (strcmp("puntuacion_t2_roja",cadena)==0)
{
if (parametro==120)
{
segmento_01[PUNTUACION_T2_ROJA]=parametro;
return 1;
}
}
else
if (strcmp("puntuacion_t3_roja",cadena)==0)
{
if (parametro==140)
{
segmento_01[PUNTUACION_T3_ROJA]=parametro;
return 1;
}
}
else
if (strcmp("puntuacion_t4_roja",cadena)==0)
{
if (parametro==160)
{
segmento_01[PUNTUACION_T4_ROJA]=parametro;
return 1;
}
}
else
if (strcmp("puntuacion_bola_negra",cadena)==0)
{
if (parametro==200)
{
segmento_01[PUNTUACION_BOLA_NEGRA]=parametro;
return 1;
}
}
else
if (strcmp("quita_energia_roja",cadena)==0)
{
if (parametro>=10&¶metro<=25)
{
segmento_01[QUITA_ENERGIA_ROJA]=parametro;
return 1;
}
}
return 0;
} // fin funcion Comprobar_Archivo_Conf