#include "iadata.h"

const int ld[][13] = {{0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31},
                      {0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}};

int czyPrzestepny(int r)
{
	return (r % 4 == 0 && r % 100 != 0) || r % 400 == 0;
}

int dniMiesiaca(int m, int r)
{
	return ld[czyPrzestepny(r)][m];
}

int dzienRoku(int d, int m, int r)
{
	int p = czyPrzestepny(r);
	while(--m > 0)
		d += ld[p][m];
	return d;
}

int dzienTygodnia(int d, int m, int r)
{
	if(m > 2)
		m -= 2;
	else
	{
		m += 10;
		r--;
	}
	int w = r / 100;
	r %= 100;
  return (d + (13 * m - 1) / 5 + r + r / 4 + w / 4 + 5 * w - 1) % 7;
}
