Per il calcolo del giorno dell'anno, se non hai bisogno di reinventare la ruota, puoi utilizzare la struct tm:

Codice PHP:
#include <iostream>
#include <ctime>

using namespace std;

int yday(int dayint monthint year)
{
    
tm date = {001daymonth-1year-19000};    
    
mktime(&date);
    return 
date.tm_yday+1;
}

int main()
{
    
cout << yday(1,32012) << endl;