생일과 오늘을 입력하면 태어난지 몇 일째인지 출력하는 알고리즘입니다 이를 해결하는 다음 프로그램에 대해 빈칸을 채우세요
생년을 입력하세요: 1397 생월을 입력하세요: 5 생일을 입력하세요: 15 올해를 입력하세요: 1450 이번 달을 입력하세요: 3 오늘 날짜를 입력하세요: 30 1397년 5월 15일부터 1450년 3월 30일까지 19312일째 잘 견디고 잘 살아내셨어요 당신을 응원합니다
생년을 입력하세요: 1752 생월을 입력하세요: 10 생일을 입력하세요: 28 올해를 입력하세요: 1800 이번 달을 입력하세요: 8 오늘 날짜를 입력하세요: 18 1752년 10월 28일부터 1800년 8월 18일까지 17461일째 잘 견디고 잘 살아내셨어요 당신을 응원합니다
생년을 입력하세요: 1457 생월을 입력하세요: 8 생일을 입력하세요: 28 올해를 입력하세요: 1495 이번 달을 입력하세요: 1 오늘 날짜를 입력하세요: 29 1457년 8월 28일부터 1495년 1월 29일까지 13669일째 잘 견디고 잘 살아내셨어요 당신을 응원합니다
.;
public class LivingPeriod
{
public static void main( String[] args ) {
scan = ( );
( "생년을 입력하세요: " );
birthYear = scan.();
( "생월을 입력하세요: " );
birthMonth = scan.();
( "생일을 입력하세요: " );
birthDay = scan.();
( "올해를 입력하세요: " );
thisYear = scan.();
( "이번 달을 입력하세요: " );
thisMonth = scan.();
( "오늘 날짜를 입력하세요: " );
thisDay = scan.();
birthTotalDays = ( birthYear 1 ) * 365 ( birthYear 1 ) 4 ( birthYear 1 ) 100 ( birthYear 1 ) 400;
( birthMonth 1 ) {
12
birthTotalDays 31;
11
birthTotalDays 30;
10
birthTotalDays 31;
9
birthTotalDays 30;
8
birthTotalDays 31;
7
birthTotalDays 31;
6
birthTotalDays 30;
5
birthTotalDays 31;
4
birthTotalDays 30;
3
birthTotalDays 31;
2
birthTotalDays 28;
( ( ( birthYear 400 ) == 0 ) ( ( ( birthYear 100 ) != 0 ) ( ( birthYear 4 ) == 0 ) ) ) {
birthTotalDays++;
}
1
birthTotalDays 31;
}
birthTotalDays birthDay;
thisTotalDays = ( thisYear 1 ) * 365 ( thisYear 1 ) 4 ( thisYear 1 ) 100 ( thisYear 1 ) 400;
( thisMonth 1 ) {
12
thisTotalDays 31;
11
thisTotalDays 30;
10
thisTotalDays 31;
9
thisTotalDays 30;
8
thisTotalDays 31;
7
thisTotalDays 31;
6
thisTotalDays 30;
5
thisTotalDays 31;
4
thisTotalDays 30;
3
thisTotalDays 31;
2
thisTotalDays 28;
( ( ( thisYear 400 ) == 0 ) ( ( ( thisYear 100 ) != 0 ) ( ( thisYear 4 ) == 0 ) ) ) {
thisTotalDays++;
}
1
thisTotalDays 31;
}
thisTotalDays thisDay;
duration = thisTotalDays birthTotalDays 1;
( birthYear "년 " birthMonth "월 " birthDay "일부터 " thisYear "년 " thisMonth "월 " thisDay "일까지 " duration "일째 잘 견디고 잘 살아내셨어요 당신을 응원합니다" );
scan.();
}
}