Dada una fecha, debe imprimir el día de la semana.
Ejemplos:
Input : 2018 3 26 Output : Mon Input : 2010 8 9 Output : Wed
La idea es utilizar el calendario gregoriano de la API integrada de Java .
GregorianCalendar es una subclase concreta de Calendar y proporciona
el sistema de calendario estándar utilizado por la mayor parte del mundo.
GregorianCalendar(int year, int month, int dayOfMonth) construye un
GregorianCalendar con la fecha dada establecida en la zona horaria predeterminada
con la configuración regional predeterminada.
Se crean varias condiciones para comprobar la validez de
los datos de entrada. Si se encuentra que una entrada es incorrecta , se imprimirá un mensaje Inválido como salida.
// Necessary imports for using Gregorian Calendar import java.util.Calendar; import java.util.GregorianCalendar; class GFG { static int method(int year, int month, int day) { // to check the validity of day of month int[] darr = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; // check validity of year and month if (year > 0 && (month > 0 && month <= 12)) { // check for a leap year and month of February if ((year % 4 == 0 || year % 400 == 0) && month == 2 && (day > 0 && day <= 29)) { // month starts at zero, so we need to put ( month - 1 ). Calendar calendar = new GregorianCalendar(year, month - 1, day); return calendar.get(Calendar.DAY_OF_WEEK); } else { // check the range of day of month if (day > 0 && day <= darr[month - 1]) { // month starts at zero, so we need to put ( month - 1 ). Calendar calendar = new GregorianCalendar(year, month - 1, day); return calendar.get(Calendar.DAY_OF_WEEK); } else return 0; } } else return 0; } public static void main(String[] args) { String[] dayofweek = { "Invalid", "Sun", "Mon", "Tue", "Wed", "Thur", "Fri", "Sat" }; int y = 2018, m = 3, d = 26; System.out.println(dayofweek[method(y, m, d)]); } }
Mon
Publicación traducida automáticamente
Artículo escrito por Vaibhav shaw y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA