Ripartizione macro dalle calorie: proteine, carboidrati e grassi
Questo calcolatore di ripartizione dei macro trasforma un obiettivo energetico giornaliero in quantità pratiche, espresse in grammi, di proteine, carboidrati e grassi.
Esegui gratis nel browser
Inserisca le calorie e un qualsiasi rapporto positivo in tre parti, come 30:40:30 o 3:4:3. Lo strumento normalizza le quote e applica quattro calorie per grammo di proteine e carboidrati, nonché nove per grammo di grassi. Il calcolo è interamente offline, deterministico e pensato per la pianificazione, non per diagnosi mediche o trattamenti nutrizionali personalizzati.
Scelga un obiettivo calorico e un rapporto utile
Parta dall’obiettivo calorico giornaliero che ha già scelto, quindi inserisca pesi positivi per proteine, carboidrati e grassi. I valori non devono essere percentuali né totalizzare 100. Il rapporto 30:40:30 produce la stessa ripartizione di 3:4:3, perché il calcolatore divide ogni peso per la loro somma. Può quindi copiare un rapporto da un piano alimentare senza convertirlo manualmente. Tutti e quattro gli input devono essere numeri finiti maggiori di zero. Zero, valori negativi, campi mancanti, stringhe numeriche, infinito e dati non numerici vengono rifiutati anziché corretti in modo implicito. Questa regola rigorosa aiuta i processi automatici a individuare subito i dati errati. Gli obiettivi calorici e i rapporti dei macro sono ipotesi di pianificazione, non raccomandazioni universali. Volume di allenamento, condizioni di salute, farmaci, gravidanza, allergie e obiettivi clinici possono modificare le esigenze. Richieda una consulenza qualificata quando tali fattori sono rilevanti. Lo strumento esegue solo l’operazione richiesta e non decide quale obiettivo o rapporto sia adatto a una persona.
Comprenda come le calorie diventano grammi
Il calcolatore normalizza innanzitutto ogni peso del rapporto come percentuale del totale. Poi distribuisce l’obiettivo calorico giornaliero fra le quote ottenute. Le calorie assegnate a proteine e carboidrati vengono divise per quattro, mentre quelle assegnate ai grassi vengono divise per nove. Per esempio, 600 calorie di proteine corrispondono a 150 grammi. Il risultato include la percentuale normalizzata, le calorie assegnate e l’obiettivo in grammi per ogni macro, con valori visualizzati a due decimali. I passaggi intermedi non vengono arrotondati, così l’arrotondamento dell’interfaccia non altera prematuramente i totali. Se i valori decimali sono scomodi nella pianificazione quotidiana, può arrotondarli a grammi interi, tenendo presente che il totale calorico ricostruito potrà differire leggermente. Anche le etichette alimentari seguono regole di arrotondamento e alcuni alimenti contengono fibre, alcol o altri componenti. Per questo un menu registrato potrebbe non coincidere esattamente con il totale teorico. Consideri il risultato una base coerente per pianificare, non una misurazione di laboratorio dell’energia alimentare.
Usi il risultato in un processo ripetibile
Applichi gli obiettivi in grammi a un modello di pasti, una lista della spesa, un diario nutrizionale o una scheda di consulenza. Se li suddivide tra più pasti, scelga la distribuzione che favorisce la costanza; il calcolatore non richiede pasti uguali e non prescrive orari. Per confrontare rapporti alternativi, mantenga fisse le calorie e cambi soltanto i tre pesi. Conservi gli input originali insieme al risultato, perché una quantità in grammi senza il relativo obiettivo calorico e rapporto manca di contesto. Lo stesso input restituisce sempre lo stesso output: non intervengono rete, casualità, profili salvati o logica legata alla data. La capacità è quindi adatta a fogli di calcolo, test, procedure pianificate e applicazioni che richiedono risultati riproducibili. Gli input non validi o non positivi generano un errore esplicito, così possono essere corretti prima dell’uso. Esegua un nuovo calcolo quando cambia l’obiettivo iniziale. Per decisioni sanitarie, soprattutto variazioni di peso drastiche o gestione di patologie, faccia verificare il piano da un dietista o altro professionista qualificato.
Casi d'uso
Creare un modello giornaliero di pasti
Converta un obiettivo calorico definito e il rapporto preferito in quantità da distribuire tra i pasti.
Confrontare diversi scenari
Mantenga costanti le calorie e osservi come pesi positivi diversi cambiano i grammi dei tre macronutrienti.
Automatizzare le schede di pianificazione
Produca obiettivi deterministici per fogli nutrizionali, moduli di consulenza o applicazioni senza dipendere dalla rete.
Domande frequenti
Il rapporto deve totalizzare 100?
No. Tre pesi positivi qualsiasi vengono normalizzati in base alla somma; pertanto 3:4:3 e 30:40:30 sono equivalenti.
Come vengono calcolati i grammi dei macro?
Le calorie di proteine e carboidrati vengono divise per quattro, mentre quelle dei grassi vengono divise per nove.
Perché un diario alimentare può indicare calorie diverse?
Etichette e applicazioni possono arrotondare o trattare fibre e alcol diversamente rispetto alla conversione teorica.
Questo calcolatore consiglia una dieta?
No. Converte l’obiettivo e il rapporto che Lei fornisce, senza stabilire se siano appropriati dal punto di vista medico o nutrizionale.
Quanto costa il calcolo tramite API?
Ogni richiesta API costa $0.002. Il calcolo è interamente offline e deterministico.
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/health/macro-split-from-cal \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"calories":2000,"protein_ratio":30,"carbohydrate_ratio":40,"fat_ratio":30}'const res = await fetch("https://api.kit.forhosting.com/health/macro-split-from-cal", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"calories": 2000,
"protein_ratio": 30,
"carbohydrate_ratio": 40,
"fat_ratio": 30
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/health/macro-split-from-cal",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"calories": 2000,
"protein_ratio": 30,
"carbohydrate_ratio": 40,
"fat_ratio": 30
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/health/macro-split-from-cal", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"calories":2000,"protein_ratio":30,"carbohydrate_ratio":40,"fat_ratio":30}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"calories":2000,"protein_ratio":30,"carbohydrate_ratio":40,"fat_ratio":30}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/health/macro-split-from-cal", 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
{
"calories": 2000,
"protein_ratio": 30,
"carbohydrate_ratio": 40,
"fat_ratio": 30
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "health.macro_split_from_cal",
"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. |