날짜 계산하는 C 코드 짜고 있는데 꽉 막혀서 질문드립니다..
내꺼
질문 제목 :
날짜 계산하는 C 코드 짜고 있는데 꽉 막혀서 질문드립니다..
질문 내용 :코딩하고 있는 프로그램의 내용은 다음과 같습니다..
자신이 원하는 연/월/일을 입력한 뒤
입력된 일자만큼 전/후의 날짜의 연/월/일을 구하는 코드입니다..
윤년과 연도 변화까지 모두 고려한 것입니다..
일단 아래 코드와 같이 코딩을 했는데 이후에 진행이 안되고 있습니다.ㅠ
어떻게 내용을 추가하면 될까요??
코딩은 아니라도 어떤부분의 조건을 추가해줘야 하나요?
많이 진행된 상황이 아닌데 머리가 안굴러가고 있어 이렇게 올렸습니다..
------------------------------------- Code ------------------------------------
#include stdio.hint main (int argc, char **argv)
{
int i, j, n, k, l, m;
int gyear, gmon, gday;
int jyear, jday;
int lastday[12] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
int sumday;
int day;
int pday, mday; sumday = 0;
jyear = 0;
jday = 0;
pday = 0;
mday = 0; scanf(%d %d %d, &gyear, &gmon, &gday);
scanf(%d, &day);
if (gyear 0 || gmon = 0 || gmon 12 || gday = 0 || gday 31)
{
printf(Error - Date error!!\n); return 0;
} if ((gyear%4) == 0 && (gyear%100) != 0 || (gyear%400) == 0)
{
lastday[1] = 29;
} else
{
lastday[1] = 28;
} for (i=1; igmon; i++)
{
sumday += lastday[i-1];
} jday = sumday + gday; pday = jday + day;
mday = jday - day;/*
printf (%d\n, jday);
printf (%d\n, pday);
printf (%d\n, mday); for (i=0; i12; i++)
{
sumday += lastday[i]; if (sumday = jday && sumday-lastday[i] jday)
{
gmon = i+1;
gday = jday - sumday + lastday[i];
}
} printf (%d %d %d, gyear, gmon, gday);
*/ return 0;
}
-
빵돌
아... 그렇군요~
근데 지금 완전히 막혀버렸습니다.ㅠ
열심히 쓰면서해봐도 안풀리네요..ㅠ -
설희
함수화를 안 하면 소스 보기가 힘들어지구요 반복해서 써야 해서 소스가 속된 말로 더러워져요.
-
냥냥
함수화를 안하고 한다면 많이 어려워 질까요??
제가 함수화 부분을 안다뤄봐서 버거워서요... -
설아
일 수에 이동하고자 하는 일 수를 가감을 하고 그 가감에 따라 월을 결정 년을 결정 시키시면 됩니다.
그리고 윤년 체크 및 2월 마지막날 결정 등을 모두 함수화 해서 사용하시는 것이 좋습니다. -
핀아
죄송합니다..
다시 수정했으며, 코드는 텍스트 파일로 따로 올려두었습니다.. -
샤인
소스를 저렇게 하시면 누가 답을 해드리나요.
드래그도 안되고 직접 쳐서 도와드려야 하나요?
드래그 및 오른쪽 버튼 활성화 하시구요. 코드를 보기 좋게 올리시길 바랍니다.