Skip to content

Instantly share code, notes, and snippets.

@IverCoder
Last active August 11, 2025 03:32
Show Gist options
  • Save IverCoder/960b229c04dc9cf0fb3a0c05e2ff1d0a to your computer and use it in GitHub Desktop.
Save IverCoder/960b229c04dc9cf0fb3a0c05e2ff1d0a to your computer and use it in GitHub Desktop.
2025-08-06
/*
* 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 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.parseByte(scanner.nextLine());
return switch (pickedNumber) {
case 1 -> Language.CEB;
case 2 -> Language.FIL;
case 3 -> Language.ENG;
default -> {
System.out.println("Invalid selection. Defaulting to English.");
yield Language.ENG;
}
};
}
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)) {
returnString = switch (language) {
case Language.CEB -> "Maayong kadlawon!";
case Language.FIL -> "Magandang madaling araw!";
case Language.ENG -> "Good dawn!";
};
} else if (providedTime.isBefore(startOfNoon)) {
returnString = switch (language) {
case Language.CEB -> "Maayong buntag!";
case Language.FIL -> "Magandang umaga!";
case Language.ENG -> "Good morning!";
};
} else if (providedTime.isBefore(startOfAfternoon)) {
returnString = switch (language) {
case Language.CEB -> "Maayong udto!";
case Language.FIL -> "Magandang tanghali!";
case Language.ENG -> "Good noon!";
};
} else if (providedTime.isBefore(startOfEvening)) {
returnString = switch (language) {
case Language.CEB -> "Maayong hapon!";
case Language.FIL -> "Magandang hapon!";
case Language.ENG -> "Good afternoon!";
};
} else {
returnString = switch (language) {
case Language.CEB -> "Maayong gabii!";
case Language.FIL -> "Magandang gabi!";
case Language.ENG -> "Good evening!";
};
}
return returnString;
}
public static void main(String[] args) {
final Language language = promptForLanguage();
System.out.println(greetUser(language, LocalTime.now()));
}
}
/*
* SPDX-FileCopyrightText: 2025 Katherine Nicole R.
* SPDX-License-Identifier: CC0-1.0
* AppNiKath.java by Katherine Nicole R. is marked CC0 1.0. To view a copy of this mark,
* visit https://creativecommons.org/publicdomain/zero/1.0/
*/
import java.util.Scanner;
class z_AppNiKath {
private static enum Language {
ENG, FIL, CEB
}
private static Language promptForLanguage() {
System.out.println("Pick a language");
System.out.println("Pumili ng wika");
System.out.println("Pagpili og wika");
System.out.println("1. English");
System.out.println("2. Filipino");
System.out.println("3. Bisaya");
Scanner scanner = new Scanner(System.in);
byte pickedLanguage = Byte.valueOf(scanner.nextLine());
Language language;
switch(pickedLanguage) {
case 1:
language = Language.ENG;
break;
case 2:
language = Language.FIL;
break;
case 3:
language = Language.CEB;
break;
default:
System.out.println("Invalid selection. Defaulting to English.");
language = Language.ENG;
break;
}
return language;
}
private static String introMessage(Language language) {
String returnString;
switch(language) {
case Language.ENG:
returnString = "Good morning!";
break;
case Language.FIL:
returnString = "Magandang umaga!";
break;
case Language.CEB:
returnString = "Maayong buntag!";
break;
default:
returnString = "Fatal error: language is not supported";
System.exit(-1);
}
return returnString;
}
public static void main(String[] args) {
Language language = promptForLanguage();
System.out.println(introMessage(language));
}
}
@IverCoder
Copy link
Author

IverCoder commented Aug 8, 2025

Run online here

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment