I'm a beginner coder and i'm working on a project that determines horoscope.
The problem: All of my dates accurately determine horoscope based on the month and date entered by user except for May Gemini dates. I get invalid input for any dates entered between May 21 - May 31. I've tried rewriting the case but there's still a problem.
If anyone can see something that I don't and let me know, I'd be extremely grateful. Thanks!
switch (month) {
case 1:
if (month == 12 && day >= 22 && day <= 31)
zodiac = "Capricorn";
else if (month == 01 && day < 20)
zodiac = "Capricorn";
else
zodiac = "Invalid Input";
break;
case 2:
if (month == 1 && day >= 20 && day < 32)
zodiac = "Aquarius";
else if (month == 2 && day < 19)
zodiac = "Aquarius";
else
zodiac = "Invalid Input";
break;
case 3:
if (month == 2 && day >= 19 && day <= 29)
zodiac = "Pisces";
else if (month == 3 && day < 21)
zodiac = "Pisces";
else
zodiac = "Invalid Input";
break;
case 4:
if (month == 3 && day >= 21 && day < 32)
zodiac = "Aries";
else if (month == 4 && day < 20)
zodiac = "Aries";
else
zodiac = "Invalid Input";
break;
case 5:
if (month == 4 && day >= 20 && day < 31)
zodiac = "Taurus";
else if (month == 5 && day < 21)
zodiac = "Taurus";
else
zodiac = "Invalid Input";
break;
case 6:
if (month == 5 && day >= 21 && day < 32)
zodiac = "Gemini";
else if (month == 6 && day < 21)
zodiac = "Gemini";
else
zodiac = "Invalid Input";
break;
case 7:
if (month == 6 && day >= 21 && day < 31)
zodiac = "Cancer";
else if (month == 7 && day < 23)
zodiac = "Cancer";
else
zodiac = "Invalid Input";
break;
case 8:
if (month == 7 && day >= 23 && day < 32)
zodiac = "Leo";
else if (month == 8 && day < 23)
zodiac = "Leo";
else
zodiac = "Invalid Input";
break;
case 9:
if (month == 8 && day >= 23 && day < 32)
zodiac = "Virgo";
else if (month == 9 && day < 23)
zodiac = "Virgo";
else
zodiac = "Invalid Input";
break;
case 10:
if (month == 9 && day >= 23 && day < 31)
zodiac = "Libra";
else if (month == 10 && day < 23)
zodiac = "Libra";
else
zodiac = "Invalid Input";
break;
case 11:
if (month == 10 && day >= 23 && day < 32)
zodiac = "Scorpio";
else if (month == 11 && day < 22)
zodiac = "Scorpio";
else
zodiac = "Invalid Input";
break;
case 12:
if (month == 11 && day >= 22 && day < 31)
zodiac = "Sagittarius";
else if (month == 12 && day < 22)
zodiac = "Sagittarius";
else
zodiac = "Invalid Input";
break;
Aucun commentaire:
Enregistrer un commentaire