Título: Switch y case Publicado por: perujo en 8 Agosto 2017, 12:28 pm Hola, tengo una duda al usar los case,al escribir esto:
switch (dia) { case 1: case 30: . . . } Lo que hace es coger todos los numeros desde el 1 hasta el 30 o coge solo el caso 1 y 30? Me podriais decir como se hace para que solo coja los casos que yo quiero? y también para que coja desde el caso 1 hasta el 30? Gracias. Título: Re: Switch y case Publicado por: SubAtomicParticula en 8 Agosto 2017, 12:41 pm Saludos, la sentencia funciona por valores por separado pero podemos agrupar por valores al omitir break;
Caso básico sería: switch(dia){ case 1: Funcion1(); break; case 2: Funcion2(); break; case 3: Funcion3(); break; ------ case 30: Funcionx(); break; } Caso de agrupar por valores sería: switch(dia){ case 1: case 2: Funcion1y2(); break; case 3:case 4:case 5: Funcion345(); break; ------ case 30: Funcionx(); break; } Para el caso de un rango seria incluir todos los valores: switch(dia){ case 1:case 2:case 3:case 4:case 5: <----> case 15: Funcion1_15(); break; ------ case 30: Funcionx(); break; } También puedes hacer lo siguiente: switch(dia){ case 30: Funcion30(); break; default: Funcionx(); break; } Con esto conseguiríamos hacer un caso para el día 30 y el resto de los días se ejecutaría el caso por defecto (default:). Espero haberte ayudado. Título: Re: Switch y case Publicado por: perujo en 8 Agosto 2017, 13:44 pm Vale muchas gracias,
entonces para hacer todos los valores del 1 al 30 por ejemplo debería escribir los 30 uno a uno verdad? Título: Re: Switch y case Publicado por: engel lex en 8 Agosto 2017, 15:26 pm Vale muchas gracias, entonces para hacer todos los valores del 1 al 30 por ejemplo debería escribir los 30 uno a uno verdad? si, tendrías que hacerlos todos, pero sería mala practica, para eso hay herramientas... sería como tener un martillo y usar una piedra para martillar es decir Código
eso ocupa los casos entre 1 y 30 |