/*
* SPDX-FileCopyrightText: 2025 IverCoder
* SPDX-License-Identifier: CC0-1.0
* GreeterApp.java by IverCoder is marked CC0 1.0. To view a copy of this mark,
* visit https://creativecommons.org/publicdomain/zero/1.0/
*/
import java.util.Scanner;
import java.time.LocalTime;
class GreeterApp {
private static enum Language {
ENG, FIL, CEB
}
private static Language promptForLanguage() {
System.out.println("Language / Wika");
System.out.println("1. Bisaya");
System.out.println("2. Filipino");
System.out.println("3. English");
Scanner scanner = new Scanner(System.in);
final int pickedNumber = Byte.valueOf(scanner.nextLine());
final Language language;
switch(pickedNumber) {
case 1:
language = Language.CEB;
break;
case 2:
language = Language.FIL;
break;
case 3:
language = Language.ENG;
break;
default:
System.out.println("Invalid selection. Defaulting to English.");
language = Language.ENG;
break;
}
return language;
}
private static String greetUser(Language language, LocalTime providedTime) {
final LocalTime startOfMorning = LocalTime.of(5, 30);
final LocalTime startOfNoon = LocalTime.of(11, 30);
final LocalTime startOfAfternoon = LocalTime.of(13, 30);
final LocalTime startOfEvening = LocalTime.of(17, 45);
final String returnString;
if (providedTime.isBefore(startOfMorning)) {
switch(language) {
case Language.CEB:
returnString = "Maayong kadlawon!";
break;
case Language.FIL:
returnString = "Magandang madaling araw!";
break;
case Language.ENG:
returnString = "Good dawn!";
break;
default:
returnString = "Good dawn!";
break;
}
} else if (providedTime.isBefore(startOfNoon)) {
switch(language) {
case Language.CEB:
returnString = "Maayong buntag!";
break;
case Language.FIL:
returnString = "Magandang umaga!";
break;
case Language.ENG:
returnString = "Good morning!";
break;
default:
returnString = "Good morning!";
break;
}
} else if (providedTime.isBefore(startOfAfternoon)) {
switch(language) {
case Language.CEB:
returnString = "Maayong udto!";
break;
case Language.FIL:
returnString = "Magandang tanghali!";
break;
case Language.ENG:
returnString = "Good noon!";
break;
default:
returnString = "Good noon!";
break;
}
} else if (providedTime.isBefore(startOfEvening)) {
switch(language) {
case Language.CEB:
returnString = "Maayong hapon!";
break;
case Language.FIL:
returnString = "Magandang hapon!";
break;
case Language.ENG:
returnString = "Good afternoon!";
break;
default:
returnString = "Good afternoon!";
break;
}
} else {
switch(language) {
case Language.CEB:
returnString = "Maayong gabii!";
break;
case Language.FIL:
returnString = "Magandang gabi!";
break;
case Language.ENG:
returnString = "Good evening!";
break;
default:
returnString = "Good evening!";
break;
}
}
return returnString;
}
public static void main(String[] args) {
final Language language = promptForLanguage();
System.out.println(greetUser(language, LocalTime.now()));
}
}