Computer >> 컴퓨터 >  >> 프로그램 작성 >> C 프로그래밍

C에서 년, 주, 일의 관점에서 주어진 일 수를 변환하는 프로그램

<시간/>

일수가 주어지고 주어진 일수를 년, 주, 일 단위로 변환하는 작업입니다.

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