salve, volevo sapere se qualcuno sapeva calcolare il numero progressivo di una data dall'inizio dell'anno. Per esempio il 31/gennaio è il 31-esimo giorno ecc. E sapere il giorno della settimana di una qualsiasi data che va dal 1900 fino al 2099.

Per il giorno progressivo dal 1/1 non so da dove partire!!!!
---edit ho provato a scrivere questo ma non da i risultati sperati:
anzi sembra che dia i risultati sperati ma non sono sicuro!
Codice PHP:
    int giorno=4;
    
int mese=12;
    
int anno=2008;

    
int n=0;

    for(
int i=1;i<12;i++){
        if(
i<mese)
            switch(
i){
                case 
1:n=n+31;break;
                case 
2:anno%4==0?n+=29:n+=28;break;
                case 
3:n+=31;break;
                case 
4:n+=30;break;
                case 
5:n+=31;break;
                case 
6:n+=30;break;
                case 
7:n+=31;break;
                case 
8:n+=31;break;
                case 
9:n+=30;break;
                case 
10:n+=31;break;
                case 
11:n+=30;break;
            }
        else{
            
n+=giorno;
            break;
        }

    }

    
cout<<n
Per il giorno della settimana ho invece pensato di usare questa formula trovata in rete
Codice PHP:

Metodo della formula per stabilire il giorno della settimana

Si può stabilire il giorno della settimana relativo a qualsiasi data successiva al 15
-10-1582 anche mediante l'applicazione di questa formula:

x = N + (q)(N - 1) : 4 - (q)(N - 1) : 100 + (q)(N - 1) : 400 + t
dove N è l'
anno relativo alla data che interessa, (q)(1) : , (q)(1) : 100 e (q)(1) : 400 sono la parte intera dei quozienti delle tre divisioni di (1rispettivamente per 4per 100 e per 400 e t rappresenta la data annuale del giorno consideratoovvero il numero di giorni trascorsi dall'inizio dell'anno fino al giorno stesso (compreso).

Una volta calcolato xoccorrerà trovare il resto della divisione

7
fonte