Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: angeljonh en 20 Agosto 2017, 19:10 pm



Título: Enum
Publicado por: angeljonh en 20 Agosto 2017, 19:10 pm
Como puedo definir una constante de enumeración, que asocie el nombre del mes con el numero de mes correspondiente a cada semestre escolar.

EJEMPLO: Enero es el primero mes del primer ciclo y julio es el ultimo mes del ciclo .
Agosto es el primer mes del segundo ciclo y diciembre es el ultimo mes del ciclo.

AYUDA!!.


Título: Re: Enum
Publicado por: ivancea96 en 21 Agosto 2017, 13:21 pm
Umm si quieres almacenar ambos datos en el enum (ciclo y número de mes dentro del ciclo), tendrás que guardar en los valores del enum algo más que "solo un número". Por ejemplo:
Código
  1. enum Meses{
  2.    Enero = 11,
  3.    Febrero = 12,
  4.    // ...
  5.    Agosto = 21,
  6.    Diciembre = 25
  7. };

Decenas: número de ciclo. Unidades: número de mes.

Código
  1. int ciclo = Meses::Enero/10;
  2. int mes = Meses::Enero%10;

¿Es esto lo que buscabas?


Título: Re: Enum
Publicado por: Serapis en 21 Agosto 2017, 14:09 pm
Si no te entendí mal....

Basta crear dos enumeraciones, cada una comprendiendo los meses que correspondan y empezando la enumeración, en el mes y valor correspondientes.
Código:
Enumeracion MesesCiclo1
    CICLO1_ENERO = 1
    ...
    CICLO1_JULIO = 7
Fin enumeracion

Enumeracion MesesCiclo2
    CICLO2_AGOSTO = 1
    ...
    CICLO2_DICIEMBRE = 5
Fin enumeracion

MesCiclo1 MesA = 2  // que corresponde a CICLO1_FEBRERO
MesCiclo2 MesB = 4  // que corresponde a CICLO2_NOVIEMBRE

Puedes eliminar el prefijo de las enumeraciones (CICLOx_ ), si lo prefieres...

p.d.: Si solo quieres usar una enumeración, la solución que te propone Ivancea96, satisface tus necesidades, por un lado te proporciona el valor de ciclo, y por otra el valor del mes.


Título: Re: Enum
Publicado por: angeljonh en 21 Agosto 2017, 20:10 pm
en efecto eso era lo que buscaba ya lo entendi, muchas gracias