for迴圈寫萬年曆
阿新 • • 發佈:2018-12-25
import java.util.*;
class B
{
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
System.out.println("歡迎使用萬年曆");
System.out.println("請輸入年份");
int year=sc.nextInt();
System.out.println("請輸入月份");
int month=sc.nextInt();
int sum=0;
//判斷年份的差距
for (int i=1900;i<year ;i++ )
{
if (year%400==0||year%4==0&&year%100!=0)
{
sum+=366;
}else
{
sum+=365;
}
}
//判斷月份
for (int i=1;i<month ;i++ )
{
switch (i)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
sum+=31;
break;
case 2:
if (year%400==0||year%4==0&&year%100!=0)
{
sum+=29;
}else
{
sum+=28;
}
break;
default:
sum+=30;
}
}
//求餘數
int ys=sum%7;
int space=(ys+1)%7;//空格數
//求輸入的月份有多少天
int days=0;
switch (month)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
days=31;
break;
case 2:
if (year%400==0||year%4==0&&year%100!=0)
{
days=29;
}else
{
days=28;
}
break;
default:
days=30;
}
//days 是當前月份的天數
System.out.println("日\t一\t二\t三\t四\t五\t六");
//先輸出空格
for(int i=0;i<space;i++)
{
System.out.print("\t");
}
//輸出全部的天數
for(int i=1;i<=days;i++)
{
System.out.print(i+"\t");
if((i+space)%7==0)
{
System.out.println();
}
}
}
}
class B
{
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
System.out.println("歡迎使用萬年曆");
System.out.println("請輸入年份");
int year=sc.nextInt();
System.out.println("請輸入月份");
int month=sc.nextInt();
int sum=0;
//判斷年份的差距
for (int i=1900;i<year ;i++ )
{
if (year%400==0||year%4==0&&year%100!=0)
{
sum+=366;
}else
{
sum+=365;
}
}
//判斷月份
for (int i=1;i<month ;i++ )
{
switch (i)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
sum+=31;
break;
case 2:
if (year%400==0||year%4==0&&year%100!=0)
{
sum+=29;
}else
{
sum+=28;
}
break;
default:
sum+=30;
}
}
//求餘數
int ys=sum%7;
int space=(ys+1)%7;//空格數
//求輸入的月份有多少天
int days=0;
switch (month)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
days=31;
break;
case 2:
if (year%400==0||year%4==0&&year%100!=0)
{
days=29;
}else
{
days=28;
}
break;
default:
days=30;
}
//days 是當前月份的天數
System.out.println("日\t一\t二\t三\t四\t五\t六");
//先輸出空格
for(int i=0;i<space;i++)
{
System.out.print("\t");
}
//輸出全部的天數
for(int i=1;i<=days;i++)
{
System.out.print(i+"\t");
if((i+space)%7==0)
{
System.out.println();
}
}
}
}