IMS-java/Code/Steiner/starSigns/src/App.java

139 lines
4 KiB
Java
Raw Normal View History

2024-06-24 08:18:59 +02:00
import java.util.Scanner;
public class App {
public static void main(String[] args) throws Exception {
while (true) {
// user Input birthday
int birthMonth = userInput("Your month");
int birthDay = userInput("Your Birthday");
// Is the date real + String
boolean validateDate = validateDate(birthDay, birthMonth);
if (validateDate) {
getStarSign(birthMonth, birthDay);
int userInput = userInput("Do you want to continue? 1 yes, 2 no");
if (userInput == 2) {
break;
}
} else {
System.out.println("Invalid date please enter another one");
System.out.println("******************************");
}
}
}
public static int userInput(String myText) {
Scanner scan = new Scanner(System.in);
System.out.println(myText);
return scan.nextInt();
}
public static void getStarSign(int month, int day) {
String starSign;
switch (month) {
case 1:
if (day <= 20) {
starSign = "Capricorn";
} else {
starSign = "Aquarius";
}
break;
case 2:
if (day <= 19) {
starSign = "Aquarius";
} else {
starSign = "Pisces";
}
break;
case 3:
if (day <= 20) {
starSign = "Pisces";
} else {
starSign = "Aries";
}
break;
case 4:
if (day <= 20) {
starSign = "Aries";
} else {
starSign = "Taurus";
}
break;
case 5:
if (day <= 21) {
starSign = "Taurus";
} else {
starSign = "Gemini";
}
break;
case 6:
if (day <= 21) {
starSign = "Gemini";
} else {
starSign = "Cancer";
}
break;
case 7:
if (day <= 22) {
starSign = "Cancer";
} else {
starSign = "Leo";
}
break;
case 8:
if (day <= 23) {
starSign = "Leo";
} else {
starSign = "Virgo";
}
break;
case 9:
if (day <= 23) {
starSign = "Virgo";
} else {
starSign = "Libra";
}
break;
case 10:
if (day <= 23) {
starSign = "Libra";
} else {
starSign = "Scorpio";
}
break;
case 11:
if (day <= 22) {
starSign = "Scorpio";
} else {
starSign = "Sagittarius";
}
break;
case 12:
if (day <= 21) {
starSign = "Sagittarius";
} else {
starSign = "Capricorn";
}
break;
default:
starSign = "Invalid month";
}
System.out.println("with the birthday " + day + ". " + month + " your assigned star sign is: " + starSign);
}
public static boolean validateDate(int day, int month) {
switch (month) {
case 1, 3, 5, 7, 8, 10, 12:
return (day <= 31 && day > 0);
case 4, 6, 9, 11:
return (day <= 30 && day > 0);
case 2:
return (day <= 29 && day > 0);
default:
return false;
}
}
}