#include <iostream>
using namespace std;
bool validarFecha(int dia, int mes) {
if (dia < 1 || dia > 31) {
return false;
} else if (mes < 1 || mes > 12) {
return false;
} else if (mes == 4 || mes == 6 || mes == 9 || mes == 11) {
return dia < 31 ;
} else if (mes == 2) {
return dia < 30;
}
return true;
}
string determinarSigno(int dia, int mes) {
string signo;
switch (mes) {
case 1:
dia <= 19 ? signo = "Capricornio" : signo = "Acuario";
break;
case 2:
dia <= 18 ? signo = "Acuario" : signo = "Piscis";
break;
case 3:
dia <= 20 ? signo = "Piscis" : signo = "Aries";
break;
case 4:
dia <= 19 ? signo = "Aries" : signo = "Tauro";
break;
case 5:
dia <= 20 ? signo = "Tauro" : signo = "Geminis";
break;
case 6:
dia <= 20 ? signo = "Geminis" : signo = "Cancer";
break;
case 7:
dia <= 22 ? signo = "Cancer" : signo = "Leo";
break;
case 8:
dia <= 22 ? signo = "Leo" : signo = "Virgo";
break;
case 9:
dia <= 22 ? signo = "Virgo" : signo = "Libra";
break;
case 10:
dia <= 22 ? signo = "libra" : signo = "Escorpion";
break;
case 11:
dia <= 21 ? signo = "Escorpion" : signo = "Sagitario";
break;
case 12:
dia <= 21 ? signo = "Sagitario" : signo = "Capricornio";
break;
}
return signo;
}
int main() {
int dia, mes;
string signoZodiacal;
char sep;
cout << "Introduce tu fecha de nacimiento con formato dd/mm o dd-mm: ";
cin >> dia >> sep >> mes;
if (validarFecha(dia, mes)) {
signoZodiacal = determinarSigno(dia, mes);
cout << "Tu signo zodiacal es: " << signoZodiacal << endl;
} else {
cout << "Fecha invalida" << endl;
}
}
To embed this program on your website, copy the following code and paste it into your website's HTML: