JAva漁師の網干しを実現

3568 ワード

package com.example.demo.sample;

import java.util.Scanner;

/**
* Desc : 2015 1 1 , , 2015 1 1 , 。
*
* @author : GaoQiao
* @date : 2019-05-22
*/
public class FisherMan {
/**
* :
*


* :
*


* (1) (2015 2015 ) , leap() 。 4 100 , 400 。
*


* (2) 2015 1 1 。 2015 , sum 366, sum 365。
*


* 12 , 2 , a b 。 , m m-1 , 。 。
*
* @param args
*/
public static void main(String[] args) {
FisherMan fisherMan = new FisherMan();
int year = 2019;
int month = 05;
int day = 20;
for (int i = 0; i < 7; i++) {
int n = fisherMan.number(year, month, day);
// 1 2 3 ,
if ((n % 5) < 4 && (n % 5) > 0) {
System.out.println(" [" + year + " +" + month + " " + day + " ], 。
");
} else {
System.out.println(" [" + year + " +" + month + " " + day + " ], 。
");
}
day++;
}
}

/**
* leap()
*
* @param years
* @return
*/
int leap(int years) {
if (years % 4 == 0 && years % 100 != 0 || years % 400 == 0) {
//
return 1;
}
//
return 0;
}

/**
* number() 2011 1 1
*
* @param year
* @param month
* @param day
* @return
*/
int number(int year, int month, int day) {
int sum = 0, i, j, k;
// a
int[] a = {
31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31
};
// b
int[] b = {
31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31
};
//
if (leap(year) == 1) {
for (i = 0; i < month - 1; i++) {
// , b m-1
sum += b[i];
}
} else {
for (i = 0; i < month - 1; i++) {
// , a m-1
sum += a[i];
}
}
for (j = 2015; j < year; j++) {
if (leap(j) == i) {
// 2011 366
sum += 366;
} else {
// 2011 365
sum += 365;
}
}
// ,
sum += day;
//
return sum;
}
}


日付[2019年+5年20日]は、ネットを干しています.
日付[2019年+5年21日]は、魚を打っています.
日付[2019年+5年22日]は、魚を打っています.
日付[2019年+5年23日]は、魚を打っています.
日付[2019年+5年24日]は、ネットを干しています.
日付[2019年+5年25日]は、ネットを干しています.
日付[2019年+5年26日]、あなたは魚を打っています.
転載先:https://www.cnblogs.com/gaoqiao/p/10906449.html