Obliczanie dnia tygodnia

0

Mam takie oto zadanie i proszę o pomoc:

Obliczanie dnia tygodnia
Algorytm wynikający z historii kalendarza:
jeżeli miesiąc jest mniejszy od 3 ⇒ cofnij rok
o 1, miesiąc zwiększ o 12;

  • wylicz numer dnia tygodnia według wzoru:
    d = r + r /4 – r /100 + r / 400 + 3 * m - (2 * m + 1)/5 + d + 1
    d -= (d / 7) * 7
 
#include "stdafx.h"
#include<iostream>
#include<conio.h>


using namespace std;


int _tmain(int argc, _TCHAR* argv[])
{	

	int r, m, d;

	cout << "Podaj rok: ";
	cin >> r;
	cout << "Podaj miesiac: ";
	cin >> m;

	if(m>=1&&m<=12)
	{
		if(m<3)
		{	
			r=r-1;
			m=m+12;
			d=r+(r/4)-r/100+r/400+3*m-(2*m+1)/5+d+1;
			d-=(d / 7) * 7 ;
			cout << d <<endl;
		}
		else
		{
			
			d=r+(r/4)-r/100+r/400+3*m-(2*m+1)/5+d+1;
			d-=(d/7)*7;
			cout << d << endl;
		}
	
	}
	else
	{
		cout << "Nie ma takiego miesiaca !" <<endl;
	}

	getch();
	return 0;
}

Nie ogarniam tego

0

Ale na podstawie czego sprawdzasz jaki wypadnie dzień tygodnia skoro nie podajesz nawet całej daty^^

0

d = r + r /4 – r /100 + r / 400 + 3 * m - (2 * m + 1)/5 + d + 1
^
czy aby na pewno tutaj powinno być to d ? raczej nie

1 użytkowników online, w tym zalogowanych: 0, gości: 1