Computer Science, asked by sadhnavermalav, 11 months ago

Can someone please help with this: Write a program in java to print Callender of a month in 2020 according to user's choice..​

Answers

Answered by ZEOXYTeacher
4

Answer:

hey its bit confusing. you can write using stackholder stack.

Explanation:

*****************************************************************************

* Compilation: javac Calendar.java

* Execution: java Calendar month year

*

* This program takes the month and year as command-line arguments

* and prints a calendar for that month.

*

* % java Calendar 7 2005

* July 2005

* S M T W Th F S

* 1 2

* 3 4 5 6 7 8 9

* 10 11 12 13 14 15 16

* 17 18 19 20 21 22 23

* 24 25 26 27 28 29 30

* 31

*

******************************************************************************/

public class Calendar {

/***************************************************************************

* Given the month, day, and year, return which day

* of the week it falls on according to the Gregorian calendar.

* For month, use 1 for January, 2 for February, and so forth.

* Returns 0 for Sunday, 1 for Monday, and so forth.

***************************************************************************/

public static int day(int month, int day, int year) {

int y = year - (14 - month) / 12;

int x = y + y/4 - y/100 + y/400;

int m = month + 12 * ((14 - month) / 12) - 2;

int d = (day + x + (31*m)/12) % 7;

return d;

}

// return true if the given year is a leap year

public static boolean isLeapYear(int year) {

if ((year % 4 == 0) && (year % 100 != 0)) return true;

if (year % 400 == 0) return true;

return false;

}

public static void main(String[] args) {

int month = Integer.parseInt(args[0]); // month (Jan = 1, Dec = 12)

int year = Integer.parseInt(args[1]); // year

// months[i] = name of month i

String[] months = {

"", // leave empty so that months[1] = "January"

"January", "February", "March",

"April", "May", "June",

"July", "August", "September",

"October", "November", "December"

};

// days[i] = number of days in month i

int[] days = {

0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31

};

// check for leap year

if (month == 2 && isLeapYear(year)) days[month] = 29;

// print calendar header

StdOut.println(" " + months[month] + " " + year);

StdOut.println(" S M Tu W Th F S");

// starting day

int d = day(month, 1, year);

// print the calendar

for (int i = 0; i < d; i++)

StdOut.print(" ");

for (int i = 1; i <= days[month]; i++) {

StdOut.printf("%2d ", i);

if (((i + d) % 7 == 0) || (i == days[month])) StdOut.println();

}

}

Answered by Anonymous
13

Answer:

hlo how are u pretty girl

Similar questions
Math, 11 months ago