2015 IT 웹 기반 개발자과정/JAVA
JAVA 달력 만들기
한여름밤의코딩
2015. 11. 4. 17:59
package Calendar; import java.util.Scanner; public class Calendar { public static int isLunar(int year) { int iret; iret = year%4==0?(year%100==0?(year%400==0?1:0):1):0; return(iret); } public static int Calculate_Year_Week(int year,int mon) { int i,week = 1; // 월요일 int[] Month = {31,28,31,30,31,30,31,31,30,31,30,31}; for(i=1900;i<year;i++) week = week + 1 + isLunar(i); for(i=0;i<mon-1;i++) week = week + Month[i]; week = week + (mon>3 ? isLunar(year) : 0); return(week); } public static void main(String[] args) { Scanner scan = new Scanner(System.in); String[] Week = {"일","월","화","수","목","금","토"}; int[] Month = {31,28,31,30,31,30,31,31,30,31,30,31}; int year,mon,week,day,i; System.out.print("년도를 입력하세요 = "); year = scan.nextInt(); System.out.print("월을 입력하세요 = "); mon = scan.nextInt(); week = Calculate_Year_Week(year,mon) % 7; System.out.printf("%d년도 %d월 1일은 %s요일입니다.\n",year,mon,Week[week]); System.out.println(" 일 월 화 수 목 금 토"); day = Month[mon-1] + (isLunar(year)==1 && mon==2 ? 1 : 0); for(i=0;i<week;i++) System.out.print(" "); for(i=1;i<=day;i++) { System.out.printf(" %2d",i); if ((i+week)%7==0) System.out.println(); } } }