Непонятно, почему пишет что Метод isDateOdd() возвращает неверное значение. Протестируй его работу с разными датами.
Тестировал до посинения
package com.javarush.task.task08.task0827;
/*
Работа с датой
*/
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
public class Solution {
public static void main(String[] args) {
System.out.println(isDateOdd("JUN 17 2020"));
}
public static boolean isDateOdd(String date) {
Date a = new Date(date);
int [] chisla = {31,28,31,30,31,30,31,31,30,31,30,31};
int god = 1900 + a.getYear();
int mesac = a.getMonth();
int den = a.getDay();
int summa = 0;
System.out.println(god);
if(god%400 !=0 && god%100==0){
chisla[1] = 28;
}
else
if(god%4==0){
chisla[1] = 29;
}
for (int i = 0; i <=mesac ; i++) {
summa+=chisla[i];
}
summa+=den;
if(summa%2==0){
return false;}
else
return true;
}
}