Avanzamento dell'anno in %
Il 1° luglio 2024 segna esattamente il 50% dell'anno: è il giorno 183 su 366 e ne restano 183. Inserisca una data qualsiasi per alimentare una barra di avanzamento, il monitoraggio degli obiettivi annuali o un piano stagionale. Gratis nel suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Esempio risolto
- Data
- 2024-07-01
- Anno
- 2024
- Mese
- 7
- Giorno
- 1
- Giorno dell'anno
- 183
L'avanzamento dell'anno è la quota di un anno civile già trascorsa a una data civile data, espressa come percentuale da poco sopra zero il primo gennaio fino a cento il trentuno dicembre. Dashboard di prodotto, tracciatori di obiettivi annuali, calendari di marketing stagionale e strumenti di produttività personale necessitano di quel numero senza combattere fusi dell'host o tabelle dell'ora legale. Questa calcolatrice accetta una sola data di calendario ISO nella forma rigorosa anno-mese-giorno con quattro, due e due cifre, verifica che il giorno esista davvero nel calendario gregoriano —compresi i febbrai bisestili—, calcola l'ordinale del giorno dell'anno e restituisce la percentuale uguale a cento volte quell'ordinale diviso per trecentosessantacinque o trecentosessantasei. La risposta include anche i giorni rimanenti, la percentuale rimanente, un flag bisestile e la lunghezza dell'anno così barre di progresso e countdown restano coerenti. Date impossibili come il 29 febbraio in un anno comune o il 31 aprile falliscono con un errore di convalida chiaro invece di un adattamento silenzioso.
Come si calcola la percentuale di avanzamento dell'anno da una data ISO
Parta da una data di calendario scritta come anno, mese e giorno nella forma ISO internazionale con trattini e larghezze fisse così ogni client concorda sugli stessi tre interi. Prima confermi che l'anno sia in un intervallo gregoriano pratico e che il mese sia tra uno e dodici. Poi applichi la regola bisestile usata dai calendari civili in tutto il mondo: un anno è bisestile se è divisibile per quattro, tranne che gli anni secolari lo sono solo se sono anche divisibili per quattrocento.
Questa regola rende legale il 29 febbraio in anni come 2024 e 2000, e illegale in 2023 e 1900. Con lo stato bisestile noto, consulti la lunghezza di ogni mese di quell'anno e rifiuti qualsiasi giorno che superi la lunghezza del mese, ad esempio il 31 aprile o il 30 febbraio. Quando il triple è valido, sommi le lunghezze di ogni mese completo prima del mese dato e poi aggiunga il giorno del mese per ottenere l'ordinale del giorno dell'anno.
Il primo gennaio è sempre uno, il primo marzo è sessantuno in un anno bisestile e sessanta in un anno comune, e il trentuno dicembre è trecentosessantasei o trecentosessantacinque. La percentuale di avanzamento dell'anno è definita come cento moltiplicato per il giorno dell'anno diviso per la lunghezza dell'anno, così l'ultimo giorno dell'anno è esattamente cento per cento e i giorni precedenti scalano linearmente. I giorni rimanenti equivalgono alla lunghezza dell'anno meno il giorno dell'anno, e la percentuale rimanente è la frazione complementare per cento.
Dove compaiono le calcolatrici di avanzamento dell'anno nel lavoro reale
I team di prodotto e crescita tracciano barre di progresso annuali per OKR, obiettivi di ricavi e calendari di contenuti e hanno bisogno di una percentuale affidabile che segua le date civili invece di frazioni di epoch Unix che ignorano i giorni bisestili. HR e finanza tracciano politiche di permessi, finestre di reporting fiscale e scadenze formative come quota dell'anno così le dashboard restano leggibili ai non ingegneri. Il marketing programma campagne stagionali chiedendo quale percentuale dell'anno è già passata quando è fissata una data di lancio.
Se in seguito le serve solo l'ordinale del giorno dell'anno senza percentuale, conteggi di giorni lavorativi tra due date, età da una data di nascita, numeri di giorno giuliano completi o numerazione della settimana dell'anno sotto ISO 8601, li tratti come intenti di ricerca e landing distinti invece di sovraccaricare questa pagina di percentuale di avanzamento dell'anno.
Casi d'uso
Dashboard OKR e obiettivi annuali
Converta qualsiasi data ISO nella percentuale di anno trascorsa così barre di progresso ed etichette di percentuale rimanente restano sensibili ai bisestili senza fusi dell'host.
Calendari di marketing stagionale
Mappi le date di lancio delle campagne alle percentuali di avanzamento dell'anno per deck di pianificazione e trigger stagionali automatizzati.
Domande frequenti
Un anno bisestile cambia la percentuale?
Sì. Gli anni bisestili hanno 366 giorni, quindi lo stesso mese-giorno dopo febbraio si mappa a una percentuale diversa rispetto a un anno comune. Il 29 febbraio è accettato solo negli anni bisestili.
Cosa succede se la data non è valida?
Forma errata, mese fuori intervallo o giorni impossibili come 2023-02-29 sono rifiutati e non addebitati.
È la stessa cosa del giorno dell'anno?
No. Il giorno dell'anno restituisce l'ordinale 1–366. Questa capacità restituisce la percentuale trascorsa dell'anno (e la rimanente), un intento di ricerca diverso anche se entrambe usano matematica di calendario.
Quanto costa?
Lo strumento nel browser è gratuito e gira in locale.
Come si calcola la percentuale di avanzamento dell'anno?
La posizione del giorno nell'anno viene divisa per il numero di giorni di quell'anno, 365 o 366, e moltiplicata per 100. Per questo il 31 dicembre dà sempre esattamente il 100%.
Strumenti correlati
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/date/year-progress \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"date":"2024-07-01"}'const res = await fetch("https://api.kit.forhosting.com/date/year-progress", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"date": "2024-07-01"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/date/year-progress",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"date": "2024-07-01"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/date/year-progress", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"date":"2024-07-01"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"date":"2024-07-01"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/date/year-progress", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"date": "2024-07-01"
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "date.year_progress",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |
Note tecniche
Come si calcola la percentuale di avanzamento dell'anno da una data ISO
L'intera pipeline è aritmetica intera e a virgola mobile deterministica senza semi casuali, senza timestamp di orologio a muro, senza oggetto Date di JavaScript e senza chiamate di rete, così ingressi identici producono sempre lo stesso JSON.
Cosa invia e cosa riceve in risposta
Invii un campo stringa obbligatorio chiamato date contenente un giorno di calendario ISO rigoroso come 2024-07-01. Giorni che corrispondono al pattern ma non sono date reali di calendario —incluso il 29 febbraio non bisestile e mesi fuori da uno a dodici— falliscono anche con un messaggio che nomina il problema così i client correggono l'ingresso senza indovinare. Controlli classici includono il primo gennaio vicino a zero virgola ventisette per cento in un anno comune, il primo luglio vicino a metà anno con uno scarto di un giorno tra anni bisestili e comuni, e il trentuno dicembre esattamente cento per cento. Campi mancanti, valori non stringa e stringhe che non corrispondono al pattern a quattro-due-due cifre falliscono con invalid_input e non vengono addebitati. In caso di successo la risposta ripete la stringa di data normalizzata, i componenti numerici di anno, mese e giorno, l'intero day_of_year da uno a trecentosessantacinque o trecentosessantasei, un booleano is_leap_year, days_in_year come trecentosessantacinque o trecentosessantasei, remaining_days fino all'ultimo giorno di quell'anno, percent come la frazione di anno trascorsa per cento, remaining_percent come la frazione complementare per cento, e una breve stringa formula che documenta la regola bisestile e la definizione della percentuale. Il prezzo delle chiamate API riuscite è la base pubblicata di $0.002 per voce; i fallimenti di convalida non consumano il saldo prepagato.
Dove compaiono le calcolatrici di avanzamento dell'anno nel lavoro reale
Poiché questa capacità è un motore di parse puro, il prezzo API è la base pubblicata di $0.002 per voce riuscita e la convalida fallita non consuma saldo.
Casi di integrazione
Conformità e tracciamento permessi
Marchi politiche annuali con una percentuale stabile e remaining_days da ingressi YYYY-MM-DD rigorosi, con invalid_input chiaro su date errate.
Domande tecniche
Come si calcola la percentuale di avanzamento dell'anno?
percent = 100 × day_of_year / days_in_year, dove day_of_year è l'ordinale base 1 della data ISO e days_in_year è 365 o 366 sotto le regole bisestili gregoriane. Il 31 dicembre è sempre esattamente 100%.