일수가 주어지고 주어진 일수를 년, 주, 일 단위로 변환하는 작업입니다.
1년의 일 수를 365일로 가정합니다.
년수 =(일수) / 365
설명-:년수는 주어진 일수를 365로 나눈 몫입니다.
주 수 =(일 수 % 365) / 7
설명-:주수는 일수를 365로 나눈 나머지를 모아 주당 일수로 나누어 7을 구합니다.
일수 =(일수 % 365) % 7
설명-:일수는 일수를 365로 나눈 나머지를 구하고, 나머지 부분을 한 주의 일수로 나누어 7인 나머지를 구합니다.
예시
Input-:days = 209 Output-: years = 0 weeks = 29 days = 6 Input-: days = 1000 Output-: years = 2 weeks = 38 days = 4
알고리즘
Start Step 1-> declare macro for number of days as const int n=7 Step 2-> Declare function to convert number of days in terms of Years, Weeks and Days void find(int total_days) declare variables as int year, weeks, days Set year = total_days / 365 Set weeks = (total_days % 365) / n Set days = (total_days % 365) % n Print year, weeks and days Step 3-> in main() Declare int Total_days = 209 Call find(Total_days) Stop
예시
#include <stdio.h> const int n=7 ; //find year, week, days void find(int total_days) { int year, weeks, days; // assuming its not a leap year year = total_days / 365; weeks = (total_days % 365) / n; days = (total_days % 365) % n; printf("years = %d",year); printf("\nweeks = %d", weeks); printf("\ndays = %d ",days); } int main() { int Total_days = 209; find(Total_days); return 0; }
출력
위의 코드를 실행하면 다음 출력이 생성됩니다.
years = 0 weeks = 29 days = 6