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

월과 1일이 있는 달력의 열을 계산하는 C++ 코드

<시간/>

두 개의 숫자 m과 d가 있다고 가정합니다. 요일이 열로 표시되고 행이 현재 요일로 표시되는 달력을 고려하십시오. 달력의 열에 몇 개의 열이 m 달과 d 달의 첫 번째 날짜의 요일을 제공해야 하는지 알고 싶습니다(연도가 윤년이 아니라고 가정).

따라서 입력이 m =11과 같으면; d =6이면 11월 1일이 토요일이고 5개의 열이면 충분하기 때문에 출력은 5가 됩니다.

단계

이 문제를 해결하기 위해 다음 단계를 따릅니다. −

Define an array a of size: 13 := { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }
return (a[m] + d + 5) / 7

예시

이해를 돕기 위해 다음 구현을 살펴보겠습니다. −

#include <bits/stdc++.h>
using namespace std;
int solve(int m, int d){
   int a[13] = { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
   return (a[m] + d + 5) / 7;
}
int main(){
   int m = 11;
   int d = 6;
   cout << solve(m, d) << endl;
}

입력

11, 6

출력

5