Segnalibri    
Due eventi    
Valore atteso    
nPr e nCr    
Calcolo media    
Dev. standard    
Prob. normale    
Punteggio z    
Dim. campione    
Percentuali    
Variazione %    
Differenza %    
Errore %    
Proporzioni    
Calcolo IVA    
Densità    
Molarità    
Massa molare    
Legge di Ohm    
Watt e ampere    
Codice colori    
Taglie scarpe    
Calcolo mcm    
Calcolo MCD    
Fattori primi    
Numeri romani    
Frazioni    
Numeri misti    
Secondo grado    
Disequazioni    
Radicali    
Radici    
Potenze    
Logaritmi    
Emivita    
De Moivre    
Distanza 3D    
Punto-retta    
Circonferenza    
Coniche    
Fibonacci    
Determinante    
Sin Cos Tan    
Triangolo    
Similitudine    
Cerchio    
Area ellisse    
Area cilindro    
Volume sfera    
Area sfera    
Area calotta    
Area piramide    
Calcolo età    
Aggiungi ore    
Ore e minuti    
Fusi orari    
Ore lavorate    
Cartellino    
Valore futuro    
Calcolo ROI    
Calcolo TIR    
Payback    
Calcolo PIL    
Churn rate    
Test A/B    
Traffico SEO    
Calcolo BMI    
Calcolo TDEE    
Peso ideale    
Massa grassa    
Massa magra    
Calcolo macro    
Carboidrati    
Handicap golf    
Calcolo passo    
Calcolo 1RM    
Wind chill    
Da kWh a euro    
BTU e kW    
Costo clima    
Costo calore    
Gas o luce    
Risparmio LED    
RAL e paga    
EV o benzina    
Consumo reale    
Batteria casa    
Piastrelle    
Calcolo scale    
Calcestruzzo    
Area facciata    
Isolante    
Misure tende    
TV e distanza    
Deck in legno    
Preforo viti    
Battiscopa    
Misure tenda    
Litri e libri    
   Aggiungi
Probabilità e numeri casuali: calcolatrici
Due eventi
Due eventi
Calcolo inverso
Calcolo inverso
Prove ripetute
Prove ripetute
Teorema di Bayes
Teorema di Bayes
Valore atteso
Valore atteso
Distr. binomiale
Distr. binomiale
nPr e nCr
nPr e nCr
Perm. circolari
Perm. circolari
Con ripetizione
Con ripetizione
Numeri casuali
Numeri casuali
Medie e statistica: calcolatrici
Calcolo media
Calcolo media
Moda e mediana
Moda e mediana
Dev. standard
Dev. standard
Quartili e IQR
Quartili e IQR
Tab. frequenze
Tab. frequenze
Correlazione r
Correlazione r
Prob. normale
Prob. normale
Punteggio z
Punteggio z
Int. confidenza
Int. confidenza
Dim. campione
Dim. campione
Stima campione
Stima campione
Calcolo p-value
Calcolo p-value
Percentuali e proporzioni: calcolatrici
Percentuali
Percentuali
Variazione %
Variazione %
Differenza %
Differenza %
Errore %
Errore %
Proporzioni
Proporzioni
Calcolo sconto
Calcolo sconto
Calcolo IVA
Calcolo IVA
Calcolo margine
Calcolo margine
Velocità: calcolatrici
Calcolo velocità
Calcolo velocità
Densità e concentrazione: calcolatrici
Densità
Densità
Molarità
Molarità
Massa molare
Massa molare
Fisica ed elettricità: calcolatrici
Legge di Ohm
Legge di Ohm
Watt e ampere
Watt e ampere
Codice colori
Codice colori
Caduta di tensione
Caduta di tensione
Conversione di unità: calcolatrici
Unità di peso
Unità di peso
Taglie scarpe
Taglie scarpe
Numeri interi e relativi: calcolatrici
Divisione in colonna
Divisione in colonna
Calcolo mcm
Calcolo mcm
Calcolo MCD
Calcolo MCD
Numeri relativi
Numeri relativi
Fattori primi
Fattori primi
Diofantee lineari
Diofantee lineari
Resto e modulo
Resto e modulo
Tutti i divisori
Tutti i divisori
Numeri romani
Numeri romani
Frazioni, decimali e arrotondamenti: calcolatrici
Frazioni
Frazioni
Numeri misti
Numeri misti
Semplifica frazioni
Semplifica frazioni
Frazione in decimale
Frazione in decimale
Decimale in frazione
Decimale in frazione
Arrotondamento
Arrotondamento
Equazioni e disequazioni: calcolatrici
Equazioni lineari
Equazioni lineari
Sistemi lineari
Sistemi lineari
Secondo grado
Secondo grado
Valore assoluto
Valore assoluto
Disequazioni
Disequazioni
Polinomi: calcolatrici
Binomio di Newton
Binomio di Newton
Radici quadrate e radici n-esime: calcolatrici
Radicali
Radicali
Radici
Radici
Potenze e logaritmi: calcolatrici
Potenze
Potenze
Logaritmi
Logaritmi
Numero di cifre
Numero di cifre
Notazione scientifica
Notazione scientifica
Calcoli con ×10ⁿ
Calcoli con ×10ⁿ
Emivita
Emivita
Numeri complessi: calcolatrici
Numeri complessi
Numeri complessi
Forma trigonometrica
Forma trigonometrica
De Moivre
De Moivre
Funzioni e grafici: calcolatrici
Coefficiente angolare
Coefficiente angolare
Funzione lineare
Funzione lineare
Proporzionalità
Proporzionalità
Funzione y=ax²
Funzione y=ax²
Distanza punti
Distanza punti
Distanza 3D
Distanza 3D
Punto di divisione
Punto di divisione
Punto-retta
Punto-retta
Distanza lat/lon
Distanza lat/lon
Completa il quadrato
Completa il quadrato
Circonferenza
Circonferenza
Coniche
Coniche
Coordinate polari
Coordinate polari
Successioni: calcolatrici
Progr. aritmetica
Progr. aritmetica
Progr. geometrica
Progr. geometrica
Fibonacci
Fibonacci
Relazione di ricorrenza
Relazione di ricorrenza
Vettori: calcolatrici
Calcolo vettori
Calcolo vettori
Prodotto vettoriale
Prodotto vettoriale
Matrici: calcolatrici
Calcolo matrici
Calcolo matrici
Determinante
Determinante
Matrice inversa
Matrice inversa
Geometria piana: calcolatrici
Sin Cos Tan
Sin Cos Tan
Gradi ⇔ radianti
Gradi ⇔ radianti
a sen θ + b cos θ
a sen θ + b cos θ
Triangolo
Triangolo
Area del triangolo
Area del triangolo
Triangolo rettangolo
Triangolo rettangolo
Teorema di Pitagora
Teorema di Pitagora
Angoli poligoni
Angoli poligoni
Similitudine
Similitudine
Rette parallele
Rette parallele
Area rettangolo
Area rettangolo
Parallelogramma
Parallelogramma
Area del trapezio
Area del trapezio
Cerchio
Cerchio
Settore circolare
Settore circolare
Angolo inscritto
Angolo inscritto
Area ellisse
Area ellisse
Geometria solida: calcolatrici
Volume del cubo
Volume del cubo
Superficie cubo
Superficie cubo
Parallelepipedo
Parallelepipedo
Superficie solido
Superficie solido
Volume cilindro
Volume cilindro
Area cilindro
Area cilindro
Volume sfera
Volume sfera
Area sfera
Area sfera
Volume calotta
Volume calotta
Area calotta
Area calotta
Volume ellissoide
Volume ellissoide
Area ellissoide
Area ellissoide
Volume piramide
Volume piramide
Area piramide
Area piramide
Volume del cono
Volume del cono
Superficie cono
Superficie cono
Tronco di cono
Tronco di cono
Superficie tronco
Superficie tronco
Volume del tubo
Volume del tubo
Volume capsula
Volume capsula
Superficie capsula
Superficie capsula
Date e ore: calcolatrici
Calcolo età
Calcolo età
Giorni tra date
Giorni tra date
Calcolo della data
Calcolo della data
Aggiungi ore
Aggiungi ore
Che giorno era
Che giorno era
Ore e minuti
Ore e minuti
Fusi orari
Fusi orari
Ore lavorate
Ore lavorate
Tempo trascorso
Tempo trascorso
Cartellino
Cartellino
Finanza ed economia: calcolatrici
Interesse composto
Interesse composto
Interesse semplice
Interesse semplice
Calcolo interessi
Calcolo interessi
Calcolatrice TVM
Calcolatrice TVM
Valore attuale
Valore attuale
Valore futuro
Valore futuro
Calcolo ROI
Calcolo ROI
Calcolo TIR
Calcolo TIR
Payback
Payback
Rendimento medio
Rendimento medio
Calcolo PIL
Calcolo PIL
Marketing online e metriche pubblicitarie: calcolatrici
Calcolatrice CTR
Calcolatrice CTR
Conversion rate
Conversion rate
CPC, CPM e CPA
CPC, CPM e CPA
Calcolatrice ROAS
Calcolatrice ROAS
CPA di pareggio
CPA di pareggio
Calcolatrice LTV
Calcolatrice LTV
Calcolatrice CAC
Calcolatrice CAC
Churn rate
Churn rate
Test A/B
Test A/B
Numerosità A/B
Numerosità A/B
Traffico SEO
Traffico SEO
Punto di pareggio
Punto di pareggio
Ricarico e margine
Ricarico e margine
Calcolatrice CAGR
Calcolatrice CAGR
Salute e forma fisica: calcolatrici
Calcolo BMI
Calcolo BMI
Cicli del sonno
Cicli del sonno
Calorie al giorno
Calorie al giorno
Metabolismo basale
Metabolismo basale
Calcolo TDEE
Calcolo TDEE
Peso ideale
Peso ideale
Massa grassa
Massa grassa
Massa magra
Massa magra
Calorie bruciate
Calorie bruciate
Proteine al giorno
Proteine al giorno
Calcolo macro
Calcolo macro
Carboidrati
Carboidrati
Grassi al giorno
Grassi al giorno
Altezza dei figli
Altezza dei figli
Sport: calcolatrici
Handicap golf
Handicap golf
Calcolo passo
Calcolo passo
Calcolo 1RM
Calcolo 1RM
Frequenza target
Frequenza target
Meteorologia: calcolatrici
Indice di calore
Indice di calore
Wind chill
Wind chill
Punto di rugiada
Punto di rugiada
Informatica: calcolatrici
Basi numeriche
Basi numeriche
Calcolo subnet
Calcolo subnet
Tempo di download
Tempo di download
Energia domestica e budget: calcolatrici
Consumo e costo
Consumo e costo
Da kWh a euro
Da kWh a euro
Da kWh/anno a euro
Da kWh/anno a euro
BTU e kW
BTU e kW
Costo clima
Costo clima
Costo calore
Costo calore
Gas o luce
Gas o luce
Risparmio LED
Risparmio LED
RAL e paga
RAL e paga
Budget mensile
Budget mensile
Auto: calcolatrici
Costo carburante
Costo carburante
Costo ricarica
Costo ricarica
EV o benzina
EV o benzina
Consumo reale
Consumo reale
Misura pneumatici
Misura pneumatici
Energia solare e accumulo: calcolatrici
Produzione solare
Produzione solare
Numero di pannelli
Numero di pannelli
Ritorno solare
Ritorno solare
Batteria casa
Batteria casa
Casa e fai da te: calcolatrici
Piastrelle
Piastrelle
Calcolo scale
Calcolo scale
Calcestruzzo
Calcestruzzo
Superficie pareti
Superficie pareti
Carta da parati
Carta da parati
Pittura necessaria
Pittura necessaria
Doghe pavimento
Doghe pavimento
Area facciata
Area facciata
Calcolo ghiaia
Calcolo ghiaia
Dosaggio malta
Dosaggio malta
Calcolo pendenza
Calcolo pendenza
Taglio legname
Taglio legname
Edificabilità
Edificabilità
Pavimenti in rotolo
Pavimenti in rotolo
Isolante
Isolante
Misure tende
Misure tende
TV e distanza
TV e distanza
Terra e terriccio
Terra e terriccio
Prato in rotoli
Prato in rotoli
Muro in blocchi
Muro in blocchi
Calcolo mattoni
Calcolo mattoni
Deck in legno
Deck in legno
Lunghezza rampa
Lunghezza rampa
Preforo viti
Preforo viti
Ricambi d’aria
Ricambi d’aria
Diluizione pittura
Diluizione pittura
Battiscopa
Battiscopa
Misure tenda
Misure tenda
Appendere quadri
Appendere quadri
Pendenza scarico
Pendenza scarico
Viti cartongesso
Viti cartongesso
Cubatura legname
Cubatura legname
Calcolo recinzione
Calcolo recinzione
Ritiro del legno
Ritiro del legno
Silicone e colla
Silicone e colla
Calore disperso
Calore disperso
Mobile che passa
Mobile che passa
Scatole trasloco
Scatole trasloco
Litri e libri
Litri e libri
Taglio pannelli
Taglio pannelli
Freccia ripiano
Freccia ripiano

Calcolatrice per il taglio dei listelli (numero di listelli e piano di taglio)

Inserisci la lunghezza del listello, la larghezza del taglio e la lunghezza e la quantità di ogni pezzo (8 tipi al massimo; le righe senza lunghezza si ignorano). Il prezzo di un listello può restare vuoto.

Riga Nome (facoltativo) Lunghezza (mm) Q.tà
A
B
C
D
E
F
G
H
Inserisci tutte le lunghezze in mm (millimetri). Una larghezza del taglio vuota vale 3 mm e una quantità vuota vale 1. Un pezzo senza nome si mostra come «Pezzo A» fino a «Pezzo H».
Risultato e illustrazione
Inserisci a sinistra la lunghezza del listello e la lunghezza e la quantità dei pezzi che ti servono e fai clic su «Calcola». Qui compariranno il risultato e il piano di taglio.

Cosa puoi fare in questa pagina

  • Inserisci la lunghezza del listello (2 m, 2,4 m, 3 m, 4 m…) e la lunghezza e la quantità di ogni pezzo da tagliare (fino a 8 tipi) e scopri subito quanti listelli devi comprare
  • Si tiene conto della larghezza del taglio (lo spessore della lama della sega, 3 mm come valore predefinito): così niente sorprese del tipo «quattro pezzi da 600 mm in un listello da 2400 mm» (in realtà ne entrano solo tre)
  • La ripartizione mette per primi i pezzi più lunghi (First Fit Decreasing); se i pezzi sono 60 o meno in totale, cerca anche la combinazione che usa meno listelli. Ottieni un piano di taglio del tipo «Listello 1: Asta × 2, avanzo 394 mm» e uno schema a barre per ogni listello
  • Il calcolo semplice (ogni tipo di pezzo tagliato dai propri listelli) si mostra accanto, per vedere quanti listelli fa risparmiare il taglio combinato. Il confronto con il minimo teorico (limite inferiore) indica se la ripartizione è ottima (non si può migliorare) o approssimata
  • Indica il prezzo di un listello (facoltativo) per ottenere il costo stimato e il risparmio ottenuto. In questa pagina trovi anche le formule spiegate in modo semplice e formule da copiare e incollare in Excel, Fogli Google e Python
La ripartizione segue prima il metodo «i pezzi più lunghi per primi, ciascuno nel primo listello in cui entra» (First Fit Decreasing). Se non raggiunge il minimo teorico e i pezzi sono 60 o meno in totale, si esaminano tutte le combinazioni possibili e si sceglie la ripartizione che usa meno listelli (la riga «Verifica della ripartizione» del risultato indica se è ottima o approssimata). Oltre i 60 pezzi, il risultato segue solo il metodo e non è sempre il più piccolo possibile. Prevedi un margine se devi evitare nodi, fibra tagliata o parti imbarcate, o se rifilerai le due estremità di ogni listello. Per contare a partire da una superficie, come per le piastrelle o il pavimento, usa le pagine «Calcolatrice per piastrelle» o «Calcolatrice per pavimenti in laminato e parquet».

A cosa serve questo calcolo?

Fare la spesa per un tavolo, una scaffalatura o una panca

Per esempio, per costruire un tavolo alto con quattro aste da 1000 mm, due assi da 600 mm e due barre da 400 mm (le barre inferiori) con listelli da 2,4 m, comprare listelli separati per ogni pezzo ne richiede 4, ma il taglio combinato con i pezzi più lunghi per primi ne richiede solo 3 (listello 1: aste × 2, listello 2: aste × 2, listello 3: assi × 2 + barre × 2, avanzo 388 mm).
Fare il conto prima di andare in negozio (cioè scrivere la distinta di taglio) evita una seconda visita perché manca un listello, o avanzi che non sai dove mettere. Se fai tagliare in negozio, il piano di taglio permette di dare tutti i tagli in una volta.

Travetti, traverse e montanti per pedane e recinzioni

Nei lavori che usano «molti pezzi della stessa lunghezza», come i travetti di una pedana o le traverse di una recinzione, i tagli si accumulano e cambiano il conto. Per esempio, per tagliare traverse da 600 mm da listelli da 2400 mm, quattro entrano giusti senza larghezza del taglio, ma con 3 mm \(4 \times 600 + 3 \times 3 = 2409\) mm: mancano 9 mm per la quarta, e ne entrano solo 3 per listello. Per 40 traverse servono \(\lceil 40 \div 3 \rceil = 14\) listelli, non 10.
Basta passare da 600 mm a 597 mm per metterne 4 per listello e tornare a 10 listelli: controllare fin dal progetto «quanti pezzi di questa lunghezza entrano in un listello» può far risparmiare molto materiale.

Tagliare tubi, canaline, profili in alluminio e bastoni per tende

I tubi in PVC (per esempio, in barre da 3 m), i tubi e le canaline elettriche, i profili in alluminio, i bastoni per tende e tutto ciò che «si vende in lunghezza fissa e si taglia su misura» si calcolano con le stesse formule del legno. Per esempio, tagliare tre pezzi da 1200 mm, tre da 900 mm e due da 600 mm da tubi in PVC da 3 m (con la larghezza del taglio a 0) richiede 3 tubi con il taglio combinato (4 acquistando separatamente).
La larghezza del taglio, invece, è quasi nulla con un tagliatubi e di circa 1 mm con un seghetto, secondo l’attrezzo: adatta la larghezza del taglio al tuo.

Pianificazione del materiale in una segheria, in un laboratorio di mobili o in una carpenteria metallica (utilizzo del materiale)

In un laboratorio, il materiale pesa molto sul costo: la parte del materiale che diventa prodotto si segue come utilizzo del materiale. L’«Utilizzo del materiale» di questa pagina è la lunghezza totale dei pezzi divisa per la lunghezza totale dei listelli acquistati; si avvicina al 100% quando diminuiscono gli avanzi e i tagli.
I laboratori veri ripartiscono centinaia di tipi di pezzo in migliaia di listelli con programmi di ottimizzazione del taglio che risolvono lo stesso «problema dell’impacchettamento» di questa pagina. First Fit Decreasing, che mette per primi i più lunghi, è un metodo classico per stabilire un primo piano di taglio.

Battiscopa, cornici e altri profili d’interno

I battiscopa (in basso sulle pareti) e le cornici (in alto) si vendono in lunghezze come 2,4 m e si tagliano alla lunghezza di ogni parete. Per esempio, per posare battiscopa da 2,4 m in una stanza le cui pareti misurano 1500 mm, 1300 mm, 1500 mm e 1300 mm (con le porte già detratte), un tratto da 1500 e uno da 1300 non entrano in uno stesso battiscopa: anche il taglio combinato ne richiede 4 (il limite inferiore è 3, ma non si può raggiungere).
Appena una sola parete supera la metà della lunghezza del listello, non si può più ridurre il conto: questo aiuta a decidere presto se bisogna accettare giunzioni (tagli a 45°) o scegliere un’altra lunghezza di pezzo.

Formule e schemi

Numero di pezzi in un listello
Schema
Notazione matematica (la notazione abituale)
\(m\) \(=\) \(\lfloor\) \((\) \(L\) \(+\) \(k\) \()\) \(\div\) \((\) \(l\) \(+\) \(k\) \()\) \(\rfloor\)
A parole (i simboli sostituiti da parole)
④ \(m\): pezzi per listello \(=\) \(\lfloor\) \((\) ① \(L\): lunghezza del listello \(+\) ② \(k\): larghezza del taglio \()\) \(\div\) \((\) ③ \(l\): lunghezza del pezzo \(+\) \(k\): larghezza del taglio \()\) \(\rfloor\)
La formula a parole
① Prendiamo la \(L\): lunghezza del listello
② le sommiamo la \(k\): larghezza del taglio
③ , dividiamo per la \(l\): lunghezza del pezzo più la larghezza del taglio \(k\), e arrotondiamo all’intero inferiore (il simbolo \(\lfloor\ \rfloor\) significa «arrotonda per difetto»)
④ per ottenere i \(m\): pezzi per listello
Un esempio semplice
Per tagliare aste da 1000 mm da un listello da 2400 mm con una larghezza del taglio di 3 mm, il numero di pezzi per listello è
\(m\): pezzi \(=\) \(\lfloor\) \((\) listello (2400 mm) \(+\) larghezza del taglio (3 mm) \()\) \(\div\) \((\) pezzo (1000 mm) \(+\) larghezza del taglio (3 mm) \()\) \(\rfloor\)
\((2400 + 3) \div (1000 + 3) = 2403 \div 1003 \approx 2{,}40\)
\(\lfloor 2{,}40 \rfloor = 2\)
L’idea chiave
Perché si somma la larghezza del taglio sia al listello sia al pezzo? Per tagliare \(n\) pezzi da un listello bastano \(n - 1\) tagli, non \(n\) (l’ultimo pezzo può arrivare fino alla fine del listello, senza taglio). Quindi \(n\) pezzi entrano se \(n \times l + (n - 1) \times k \leq L\). Sommando \(k\) da entrambi i lati, si ottiene \(n \times (l + k) \leq L + k\): basta contare ogni pezzo come \(l + k\) e il listello come \(L + k\), e dividere. In cantiere si conta anche in modo più semplice: si somma «lunghezza del pezzo + larghezza del taglio» per ogni pezzo e si controlla che entri nel listello (cioè \(n\) tagli). Questa calcolatrice usa il conteggio con \(n - 1\) qui sopra; per questo può trovare un pezzo in più rispetto al calcolo semplificato. Se rifilerai le due estremità di ogni listello (estremità inutilizzabili), sottraile dalla lunghezza del listello prima di scriverla. Dimenticare la larghezza del taglio può falsare il conto. Per esempio, un pezzo da 600 mm è esattamente un quarto di un listello da 2400 mm: senza larghezza del taglio, entrerebbero quattro pezzi. Con 3 mm, \(4 \times 600 + 3 \times 3 = 2409 > 2400\): mancano 9 mm per il quarto pezzo, e ne entrano solo \(\lfloor 2403 \div 603 \rfloor = 3\).
Listelli acquistando ogni pezzo separatamente
Notazione matematica (la notazione abituale)
\(B_i\) \(=\) \(\lceil\) \(q_i\) \(\div\) \(m_i\) \(\rceil\)
\(B_{\text{sep}}\) \(=\) \(B_1 + B_2 + \cdots\)
A parole (i simboli sostituiti da parole)
③ \(B_i\): listelli necessari solo per il pezzo \(i\) \(=\) \(\lceil\) ① \(q_i\): quantità del pezzo \(i\) \(\div\) ② \(m_i\): pezzi per listello \(\rceil\)
⑤ \(B_{\text{sep}}\): totale dei listelli acquistando separatamente \(=\) ④ la somma dei \(B_1,\ B_2,\ \ldots\) di ogni pezzo
La formula a parole
① Dividiamo la \(q_i\): quantità del pezzo \(i\)
② per i \(m_i\): pezzi per listello e arrotondiamo all’intero superiore (il simbolo \(\lceil\ \rceil\) significa «arrotonda per eccesso»)
③ per ottenere i \(B_i\): listelli necessari solo per il pezzo \(i\)
④ Poi, la somma dei \(B_1,\ B_2,\ \ldots\) di ogni pezzo dà il
⑤ \(B_{\text{sep}}\): totale dei listelli acquistando separatamente
Un esempio semplice
Per un tavolo alto con quattro aste da 1000 mm (le gambe), due assi da 600 mm (i lati sotto il piano) e due barre da 400 mm (i collegamenti inferiori tra le gambe) tagliate da listelli da 2400 mm (larghezza del taglio 3 mm), se ogni tipo di pezzo ha i propri listelli, il numero di listelli è
\(\text{Aste: } \lceil 4 \div 2 \rceil = 2,\quad \text{Fasce: } \lceil 2 \div 3 \rceil = 1,\quad \text{Barre: } \lceil 2 \div 5 \rceil = 1\)
\(B_{\text{sep}} = 2 + 1 + 1 = 4\)
L’idea chiave
Comprare listelli separati per ogni tipo di pezzo, «listelli per le aste» e «listelli per gli assi», corrisponde a questo calcolo semplice. Due aste entrano in un listello, quindi quattro aste richiedono 2 listelli; tre assi entrano in un listello, quindi due assi richiedono 1 listello (con posto per uno in più); cinque barre entrano in un listello, quindi due richiedono 1 listello (con posto per tre in più). In totale sono 4 listelli. Questo metodo è facile da ragionare e il taglio è semplice, ma i listelli degli assi e delle barre restano con molto resto. Il «taglio combinato» qui sotto riduce il numero di listelli mettendo altri pezzi in quei resti.
Taglio combinato (pezzi più lunghi per primi) e avanzi
Schema
Notazione matematica (la notazione abituale)
\(w\) \(=\) \(L\) \(-\) \(l_1 + l_2 + \cdots + l_n\) \(-\) \(n\) \(\times\) \(k\)
A parole (i simboli sostituiti da parole)
⑤ \(w\): avanzo di un listello \(=\) ① \(L\): lunghezza del listello \(-\) ② la lunghezza totale \(l_1,\ l_2,\ \ldots,\ l_n\) dei pezzi tagliati da questo listello \(-\) ③ \(n\): pezzi tagliati da questo listello \(\times\) ④ \(k\): larghezza del taglio
La formula a parole
① Dalla \(L\): lunghezza del listello
② togliamo la lunghezza totale \(l_1,\ l_2,\ \ldots,\ l_n\) dei pezzi tagliati da questo listello , e togliamo anche
③ \(n\): pezzi tagliati da questo listello volte
④ \(k\): larghezza del taglio (il legno che si perde a ogni taglio)
⑤ per ottenere l’ \(w\): avanzo di un listello (se il risultato è negativo, l’ultimo pezzo arriva fino alla fine del listello e l’avanzo è 0)
Un esempio semplice
Con il taglio combinato dell’esempio precedente (quattro aste da 1000 mm, due assi da 600 mm, due barre da 400 mm) in listelli da 2400 mm, il listello 3 riceve i due assi e le due barre, e il suo avanzo è
\(w\): avanzo \(=\) listello (2400 mm) \(-\) totale dei pezzi (600 + 600 + 400 + 400 mm) \(-\) pezzi (4) \(\times\) larghezza del taglio (3 mm)
\(2400 - (600 + 600 + 400 + 400) - 4 \times 3 = 2400 - 2000 - 12 = 388\)
L’idea chiave
La ripartizione del taglio combinato segue questi tre passi (First Fit Decreasing, «i più lunghi per primi, nel primo posto in cui entrano»): 1) Ordinare tutti i pezzi dal più lungo al più corto (i pezzi della stessa lunghezza mantengono l’ordine delle righe scritte). 2) Partendo dal primo pezzo, metterlo nel primo listello il cui resto sia almeno uguale alla sua lunghezza. Il resto di quel listello diminuisce di «lunghezza del pezzo + larghezza del taglio». 3) Se non entra in nessun listello, aggiungere un listello nuovo e metterlo lì. Nell’esempio, ordinati dal più lungo, i pezzi sono 1000, 1000, 1000, 1000, 600, 600, 400, 400. Il listello 1 riceve due da 1000 (restano 394 mm, un terzo da 1000 non entra), il listello 2 due da 1000, e il listello 3 i due da 600, il che lascia 1194 mm: entrano le due da 400 e restano 388 mm. In totale sono 3 listelli, uno in meno dei 4 dell’acquisto separato. Questo metodo è semplice e dà buoni risultati, ma non sempre trova il numero minimo di listelli. Per esempio, per tagliare quattro pezzi da 900 mm, due da 800 mm e due da 600 mm da listelli da 2400 mm (larghezza del taglio 3 mm), usa 4 listelli, mentre la combinazione «900 + 800 + 600» in due listelli e «900 + 900» in un listello ne richiede solo 3. Il metodo «i più lunghi per primi» mette prima due da 900 in ogni listello e si perde quella combinazione. Si dimostra che usa al massimo circa 1,22 volte il minimo più 1 listello, e se raggiunge il «minimo teorico» qui sotto, è la prova che non si può migliorare. Per questo, quando il metodo non raggiunge il minimo teorico e i pezzi sono 60 o meno in totale, questa calcolatrice esamina «tutti i modi di riempire ogni listello mettendo sempre il pezzo più lungo rimasto» (ricerca branch and bound) e sceglie la ripartizione che usa meno listelli. L’esempio di 900, 800 e 600 si mostra così con 3 listelli grazie alla ricerca. La riga «Verifica della ripartizione» del risultato indica se la ricerca è arrivata fino in fondo; oltre i 60 pezzi, il risultato è la ripartizione approssimata del metodo.
Minimo teorico (limite inferiore)
Notazione matematica (la notazione abituale)
\(B_{\min}\) \(=\) \(\lceil\) \(\sum_i q_i\,(l_i + k)\) \(\div\) \((L + k)\) \(\rceil\)
A parole (i simboli sostituiti da parole)
③ \(B_{\min}\): minimo teorico \(=\) \(\lceil\) ① la somma di (lunghezza + larghezza del taglio) di tutti i pezzi, \(\sum_i q_i\,(l_i + k)\) \(\div\) ② lunghezza del listello + larghezza del taglio, \(L + k\) \(\rceil\)
La formula a parole
① Dividiamo la somma di (lunghezza + larghezza del taglio) di tutti i pezzi, \(\sum_i q_i\,(l_i + k)\)
② per lunghezza del listello + larghezza del taglio, \(L + k\) e arrotondiamo all’intero superiore
③ per ottenere il \(B_{\min}\): minimo teorico
Un esempio semplice
Per l’esempio precedente (quattro aste da 1000 mm, due assi da 600 mm, due barre da 400 mm, listelli da 2400 mm, larghezza del taglio 3 mm), il minimo teorico è
\(4 \times (1000 + 3) + 2 \times (600 + 3) + 2 \times (400 + 3) = 4012 + 1206 + 806 = 6024\)
\(6024 \div (2400 + 3) = 6024 \div 2403 \approx 2{,}51\)
\(\lceil 2{,}51 \rceil = 3\)
L’idea chiave
Come mostrava la formula del numero di pezzi per listello, i pezzi di uno stesso listello rispettano «somma di (lunghezza + larghezza del taglio) dei pezzi ≤ lunghezza del listello + larghezza del taglio». Qualunque sia il trucco di ripartizione, non si possono usare meno listelli della somma di (lunghezza + larghezza del taglio) di tutti i pezzi divisa per \(L + k\). È il limite inferiore (un valore sotto il quale non si può scendere). Se il taglio combinato raggiunge questo limite inferiore, si conferma che il numero di listelli è il minimo possibile (ottimo). L’esempio usa 3 listelli, come il limite inferiore di 3: è ottimo. Altrimenti, un’altra combinazione potrebbe usare meno listelli, ma il limite inferiore significa solo «non meno di questo» e non sempre si può raggiungere. Per esempio, per tagliare tre pezzi da 1250 mm da listelli da 2400 mm (larghezza del taglio 3 mm), il limite inferiore vale \(\lceil 3759 \div 2403 \rceil = 2\), ma in un listello entra un solo pezzo da 1250 mm: qualunque combinazione richiede 3 listelli. Questa calcolatrice esamina le combinazioni fino a 60 pezzi: un risultato indicato come «verificato esaminando tutte le combinazioni» è il minimo, anche sopra il limite inferiore.
Listelli risparmiati e costo stimato
Notazione matematica (la notazione abituale)
\(\Delta\) \(=\) \(B_{\text{sep}}\) \(-\) \(B\)
\(T\) \(=\) \(u\) \(\times\) \(B\)
A parole (i simboli sostituiti da parole)
③ \(\Delta\): listelli risparmiati \(=\) ① \(B_{\text{sep}}\): listelli acquistando separatamente \(-\) ② \(B\): listelli con il taglio combinato
⑤ \(T\): costo stimato \(=\) ④ \(u\): prezzo di un listello \(\times\) \(B\): listelli con il taglio combinato
La formula a parole
① Ai \(B_{\text{sep}}\): listelli acquistando separatamente
② togliamo i \(B\): listelli con il taglio combinato
③ per ottenere i \(\Delta\): listelli risparmiati ,
④ e moltiplichiamo il \(u\): prezzo di un listello per i listelli del taglio combinato \(B\)
⑤ per ottenere il \(T\): costo stimato
Un esempio semplice
Nell’esempio precedente, con listelli da 2,4 m a 3,50 € l’uno (prezzo di esempio), i listelli risparmiati e il costo sono
\(\Delta = 4 - 3 = 1\)
\(T = 3{,}50 \times 3 = 10{,}50\)
\(3{,}50 \times 4 - 10{,}50 = 3{,}50\)
L’idea chiave
Il costo acquistando separatamente è \(u \times B_{\text{sep}}\) e con il taglio combinato \(u \times B\): la differenza vale quindi \(u \times \Delta\). Scrivi il prezzo di un listello. Se il legno si vende al metro lineare o al m³ invece che al pezzo, convertilo prima in prezzo a listello. Il prezzo di 3,50 € è solo un esempio (non verificato): varia molto con la sezione, l’essenza e il negozio. Il costo comprende solo il legno, senza il taglio in negozio, il trasporto né la finitura.
Il numero di pezzi che si possono tagliare da un listello si calcola con «(lunghezza del listello + larghezza del taglio) ÷ (lunghezza del pezzo + larghezza del taglio)», arrotondato all’intero inferiore. Con più tipi di pezzo, il taglio combinato, che mette per primi i pezzi più lunghi nel primo listello in cui entrano, riduce il numero di listelli. Se quel numero raggiunge il «minimo teorico», non si può migliorare. Altrimenti, la calcolatrice esamina le combinazioni (fino a 60 pezzi) per trovare la ripartizione che usa meno listelli.

Simboli e termini

Simboli

\(L\) elle maiuscola La lunghezza del listello (mm), cioè la lunghezza di un pezzo di legno acquistato. Iniziale di «lunghezza», in maiuscolo per distinguerla dalla lunghezza del pezzo \(l\).
\(l\), \(l_i\) elle minuscola, elle pedice i La lunghezza di un pezzo (un tratto da tagliare, in mm). La \(i\) di \(l_i\) è il numero dell’\(i\)-esimo tipo di pezzo (ce ne sono vari: aste, assi, barre).
\(k\) cappa La larghezza del taglio (lo spessore della lama della sega, in mm). Ogni taglio toglie quella lunghezza di legno. Iniziale di «kerf», la parola inglese per la larghezza del taglio.
\(m\), \(m_i\) emme, emme pedice i Il numero di pezzi che si possono tagliare da un listello. Si calcola con \(m = \lfloor (L + k) \div (l + k) \rfloor\).
\(q_i\) qu pedice i La quantità necessaria del pezzo \(i\). Iniziale di «quantità».
\(B_i\), \(B_{\text{sep}}\) bi pedice i, bi pedice sep \(B_i\) è il numero di listelli necessari solo per il pezzo \(i\) (\(\lceil q_i \div m_i \rceil\)). \(B_{\text{sep}}\) è il totale quando ogni pezzo si compra separatamente (la somma dei \(B_i\)).
\(B\) bi Il numero di listelli necessari con il taglio combinato (i pezzi più lunghi per primi). È il valore principale di questa pagina.
\(n\) enne Il numero di pezzi tagliati da un dato listello. Iniziale di «numero». Nella formula dell’avanzo, indica quanti tagli bisogna sottrarre.
\(w\) doppia vu L’avanzo di un listello (la lunghezza che non si usa, in mm). Iniziale di «waste», la parola inglese per lo scarto.
\(B_{\min}\) bi pedice min Il numero minimo teorico di listelli (limite inferiore). Si calcola con \(\lceil \sum_i q_i (l_i + k) \div (L + k) \rceil\); se il numero del taglio combinato \(B\) è uguale, la ripartizione è ottima. «min» è l’abbreviazione di minimo.
\(\Delta\) delta I listelli risparmiati, \(B_{\text{sep}} - B\). La lettera greca delta si usa spesso per indicare una differenza (corrisponde alla d di «differenza»).
\(u\) u Il prezzo di un listello (€). Iniziale di «unitario» (prezzo unitario).
\(T\) ti Il costo stimato (€). Iniziale di «totale». Solo il legno, senza il taglio in negozio né il trasporto.
\(\lfloor x \rfloor\) parte intera di x Il simbolo che arrotonda all’intero inferiore (parte intera). Esempio: \(\lfloor 2{,}40 \rfloor = 2\), \(\lfloor 3 \rfloor = 3\). Il numero di pezzi che si possono tagliare lascia fuori quello che non entra, da cui questo simbolo.
\(\lceil x \rceil\) funzione soffitto di x Il simbolo che arrotonda all’intero superiore. Esempio: \(\lceil 2{,}51 \rceil = 3\), \(\lceil 2 \rceil = 2\). Il numero di listelli da comprare aggiunge un listello appena ne manca un po’, da cui questo simbolo.
\(\sum\) sigma Il simbolo che significa «somma tutto». \(\sum_i q_i (l_i + k)\) significa calcolare \(q_i (l_i + k)\) per ogni tipo di pezzo \(i\) e sommare tutto. È la lettera greca sigma, che corrisponde alla S di «somma».

Termini

lunghezza del listello La lunghezza standard in cui si vendono il legno, l’acciaio, i tubi, ecc. (si dice anche lunghezza commerciale). In Italia i listelli e le tavole di legno si vendono in lunghezze come 2 m, 2,4 m, 3 m o 4 m, secondo il prodotto e il negozio (non verificato: vedi i negozi di fai da te).
larghezza del taglio La larghezza di legno che la lama toglie a ogni taglio. Una lama per sega circolare misura di solito tra 1,5 e 3 mm, ed è usuale contare circa 3 mm con la segatura e la riga della matita. Se conosci lo spessore della tua lama (di solito è inciso sulla lama), scrivilo. Si accumula a ogni taglio, quindi conta soprattutto quando si tagliano molti pezzi corti.
distinta di taglio In falegnameria, l’elenco dei pezzi da tagliare con le loro misure e il modo di ricavarli dai listelli o dalle tavole (distinta di taglio, piano di taglio). Questa pagina tratta il taglio in una dimensione, solo in lunghezza, non i tagli in due dimensioni dei pannelli di compensato.
avanzo Il pezzo di materiale che resta una volta tagliati i pezzi, all’estremità di un listello. Meno avanzi ci sono, meno materiale si spreca e maggiore è l’utilizzo del materiale.
taglio combinato Tagliare tipi diversi di pezzo dallo stesso listello, mettendo altri pezzi nel resto invece di avere listelli separati «per le aste» e «per gli assi». Di solito usa meno listelli che comprare per tipo di pezzo, e il piano di taglio di questa pagina mostra come farlo.
First Fit Decreasing (FFD) Un metodo che mette gli oggetti «dal più grande al più piccolo (Decreasing), nel primo posto in cui entrano (First Fit)». È un metodo approssimato classico del problema dell’impacchettamento, usato per il taglio combinato di questa pagina. È semplice, dà buoni risultati e resta al massimo circa 1,22 volte il minimo più 1, ma non sempre trova il minimo. Quando non raggiunge il limite inferiore, questa calcolatrice cerca il minor numero di listelli con il branch and bound (fino a 60 pezzi).
problema dell’impacchettamento (bin packing) Il problema di mettere oggetti di dimensioni diverse in scatole di dimensione fissa usando il minor numero possibile di scatole (in inglese, bin packing). Tagliare pezzi da listelli (listelli = scatole, pezzi = oggetti) è la sua versione in una dimensione. Con molti oggetti, il lavoro per trovare la disposizione migliore cresce molto in fretta; nella pratica si usano molto metodi approssimati classici come l’FFD.
branch and bound Un metodo di ricerca (in italiano ramificazione e limitazione) che prova le combinazioni separandole in rami e abbandona ogni ramo che non può migliorare il miglior risultato già trovato: così si trova la soluzione ottima senza provare tutto. In questa pagina, ogni modo di riempire un listello è un ramo, e si abbandonano i rami in cui «listelli usati + limite inferiore dei pezzi rimasti» raggiunge il miglior risultato.
utilizzo del materiale La parte del materiale che finisce nei pezzi (resa del materiale). In questa pagina è «lunghezza totale dei pezzi ÷ lunghezza totale dei listelli acquistati»; si avvicina al 100% quando diminuiscono gli avanzi e i tagli.
limite inferiore Un valore «sotto il quale non si può scendere, qualunque sia il trucco». Il minimo teorico di questa pagina è un limite inferiore; se la ripartizione lo raggiunge, è ottima. Ma non sempre si può raggiungere (tre pezzi da 1250 mm da listelli da 2400 mm danno un limite inferiore di 2, ma servono 3 listelli).
soluzione ottima La risposta migliore tra tutti i modi possibili. In questa pagina è «la ripartizione che usa meno listelli». Se il taglio combinato raggiunge il limite inferiore, è ottimo. Altrimenti, lo è anche quando l’esame di tutte le combinazioni conferma che non si possono usare meno listelli.
sezione Le dimensioni dell’estremità di un pezzo di legno, per esempio 45 × 70 mm per un travetto o 20 × 100 mm per una tavola (esempi). La lunghezza si vende come dichiarata (un listello da 2,4 m misura 2400 mm).
listello Una barra di legno di sezione piccola, quadrata o rettangolare (per esempio, 20 × 40 mm), il pezzo di legno più facile da trovare in un negozio di fai da te per strutture e piccoli mobili. Si vende in lunghezze come 2 m, 2,4 m, 3 m o 4 m.

Cosa conviene sapere prima

Ecco che cosa aiuta a usare il calcolo di questa pagina capendolo davvero, e non solo premendo il pulsante.

Divisione con resto (classi 3ª–4ª della primaria, 8-10 anni)
  • Capire che, in una divisione come «2400 ÷ 1000 = 2, resto 400», il quoziente dice quanti pezzi escono e il resto quanto avanza
Arrotondamento (classi 3ª–4ª della primaria, 8-10 anni)
  • Conoscere la differenza tra arrotondare per difetto, per eccesso e all’intero più vicino
  • Saper spiegare con parole tue perché il numero di pezzi che si possono tagliare si arrotonda per difetto, mentre il numero di listelli da comprare si arrotonda per eccesso
Divisione di numeri decimali (classi 4ª–5ª della primaria, 9-11 anni)
  • Farsi un’idea della grandezza di un quoziente come \(2403 \div 1003 \approx 2{,}40\) (il calcolo può farlo la calcolatrice)
Espressioni letterali e disequazioni (classi 2ª–3ª della secondaria di primo grado e 1ª della secondaria di secondo grado, 12-15 anni)
  • Saper scrivere una condizione con le lettere, per esempio «\(n\) pezzi entrano se \(n \times l + (n-1) \times k \leq L\)»
  • Sapere che sommare lo stesso numero da entrambi i lati di una disuguaglianza non la cambia (il passaggio a \(n(l + k) \leq L + k\))
Proporzioni e percentuali (classe 5ª della primaria e classe 1ª della secondaria di primo grado, 10-12 anni)
  • Saper scrivere una proporzione in percentuale, come l’utilizzo del materiale «lunghezza totale dei pezzi ÷ lunghezza totale dei listelli × 100»

Come calcolarlo con Excel

Copia tutta la tabella qui sotto e incollala nella cella A1 di Excel. Funziona così com’è.
Tabella per calcolare il numero di pezzi per listello
Lunghezza del listello (mm) 2400
Lunghezza del pezzo (mm) 1000
Larghezza del taglio (mm) 3
Pezzi per listello =INT((B1+B3)/(B2+B3))
Tabella per calcolare i listelli acquistando ogni pezzo separatamente
Quantità del pezzo 4
Pezzi per listello 2
Listelli necessari =ARROTONDA.PER.ECC(B1/B2;0)
Tabella per calcolare l’avanzo di un listello
Lunghezza del listello (mm) 2400
Lunghezza totale dei pezzi tagliati dal listello (mm) 2000
Pezzi tagliati dal listello 4
Larghezza del taglio (mm) 3
Avanzo (mm) =MAX(0;B1-B2-B3*B4)
Tabella per calcolare il minimo teorico
Somma di (lunghezza + larghezza del taglio) di tutti i pezzi (mm) 6024
Lunghezza del listello + larghezza del taglio (mm) 2403
Minimo teorico =ARROTONDA.PER.ECC(B1/B2;0)
Tabella per calcolare i listelli risparmiati e il costo stimato
Listelli acquistando separatamente 4
Listelli con il taglio combinato 3
Prezzo di un listello (€) 3,5
Listelli risparmiati =B1-B2
Costo stimato (€) =B3*B2
Una volta incollata, le prime celle della colonna B sono i tuoi dati e l’ultima riga si calcola da sola.
«INT(valore)» è la funzione che arrotonda all’intero inferiore (⌊ ⌋ nelle formule) e «ARROTONDA.PER.ECC(valore; 0)» arrotonda all’intero superiore (⌈ ⌉).
B4 della prima tabella vale 2, B3 della seconda 2, B5 della terza 388 mm, B3 della quarta 3, e la quinta dà 1 listello risparmiato e un costo di 10,50 €.
La ripartizione «i più lunghi per primi» consiste nel mettere in ordine i pezzi dal più lungo al più corto e assegnarli ai listelli uno per uno, un lavoro manuale in un foglio di calcolo. Usa il foglio di calcolo per controllare i pezzi per listello, gli avanzi e il limite inferiore, e questa pagina o il codice Python qui sotto per il piano di taglio.

Come calcolarlo con Fogli Google

Copia tutta la tabella qui sotto e incollala nella cella A1 di Fogli Google. Funziona così com’è.
Tabella per calcolare il numero di pezzi per listello
Lunghezza del listello (mm) 2400
Lunghezza del pezzo (mm) 1000
Larghezza del taglio (mm) 3
Pezzi per listello =INT((B1+B3)/(B2+B3))
Tabella per calcolare i listelli acquistando ogni pezzo separatamente
Quantità del pezzo 4
Pezzi per listello 2
Listelli necessari =ARROTONDA.PER.ECC(B1/B2;0)
Tabella per calcolare l’avanzo di un listello
Lunghezza del listello (mm) 2400
Lunghezza totale dei pezzi tagliati dal listello (mm) 2000
Pezzi tagliati dal listello 4
Larghezza del taglio (mm) 3
Avanzo (mm) =MAX(0;B1-B2-B3*B4)
Tabella per calcolare il minimo teorico
Somma di (lunghezza + larghezza del taglio) di tutti i pezzi (mm) 6024
Lunghezza del listello + larghezza del taglio (mm) 2403
Minimo teorico =ARROTONDA.PER.ECC(B1/B2;0)
Tabella per calcolare i listelli risparmiati e il costo stimato
Listelli acquistando separatamente 4
Listelli con il taglio combinato 3
Prezzo di un listello (€) 3,5
Listelli risparmiati =B1-B2
Costo stimato (€) =B3*B2
Le stesse formule di Excel (comprese INT, ARROTONDA.PER.ECC e MAX) funzionano così come sono in Fogli Google in italiano. Copia tutta la tabella, incollala nella cella A1 e sostituisci i numeri della colonna B con i tuoi.

Come calcolarlo con Python

import math

stock_length = 2400      # lunghezza del listello (mm). Un listello da 2,4 m
kerf = 3                 # larghezza del taglio (spessore della lama, mm)
unit_price = 3.50        # prezzo di un listello (€)
# pezzi da tagliare: (nome, lunghezza in mm, quantità)
parts = [("Asta", 1000, 4), ("Asse", 600, 2), ("Barra", 400, 2)]

# listelli acquistando ogni pezzo separatamente (si divide per i pezzi per listello e si arrotonda per eccesso)
stocks_separate = 0
for name, length, qty in parts:
    per_stock = (stock_length + kerf) // (length + kerf)   # arrotondamento per difetto (il ⌊ ⌋ della formula)
    stocks_separate += math.ceil(qty / per_stock)           # arrotondamento per eccesso (il ⌈ ⌉ della formula)

# taglio combinato: i pezzi più lunghi per primi, nel primo listello in cui entrano (First Fit Decreasing)
items = sorted([(length, name) for name, length, qty in parts for _ in range(qty)], key=lambda t: -t[0])
stocks = []   # un {"parts": [...], "remaining": lunghezza residua} per listello
for length, name in items:
    for stock in stocks:
        if length <= stock["remaining"]:
            stock["parts"].append((name, length))
            stock["remaining"] = max(0, stock["remaining"] - length - kerf)
            break
    else:
        stocks.append({"parts": [(name, length)], "remaining": max(0, stock_length - length - kerf)})

# minimo teorico (limite inferiore)
lower_bound = math.ceil(sum(qty * (length + kerf) for name, length, qty in parts) / (stock_length + kerf))

print(f"Listelli acquistando ogni pezzo separatamente: {stocks_separate}")
print(f"Listelli con il taglio combinato: {len(stocks)} (minimo teorico {lower_bound})")
for i, stock in enumerate(stocks, 1):
    names = " + ".join(f"{name} {length}" for name, length in stock["parts"])
    print(f"  Listello {i}: {names}  avanzo {stock['remaining']} mm")
print(f"Listelli risparmiati: {stocks_separate - len(stocks)}")
print(f"Costo stimato: {unit_price * len(stocks):.2f} €")
Funziona solo con la libreria standard. «//» è la divisione arrotondata all’intero inferiore (il ⌊ ⌋ delle formule) e math.ceil() arrotonda all’intero superiore (il ⌈ ⌉). Questo codice applica solo il metodo «i pezzi più lunghi per primi» (First Fit Decreasing): se la calcolatrice di questa pagina trova meno listelli esaminando le combinazioni, i risultati possono differire (sono identici quando il risultato raggiunge il limite inferiore). L’else del ciclo for si esegue quando il ciclo termina senza break (il pezzo non entra in nessun listello) e aggiunge un listello nuovo. Sostituisci con i tuoi valori la lunghezza del listello, la larghezza del taglio e l’elenco dei pezzi in alto, ed esegui il codice.

La formula in LaTeX e in altre notazioni matematiche (da copiare)

Numero di pezzi in un listello
m = ⌊(L + k) ÷ (l + k)⌋
m = \left\lfloor \frac{L + k}{l + k} \right\rfloor
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
  <mrow>
    <mi>m</mi>
    <mo>=</mo>
    <mo>&#x230A;</mo>
    <mfrac>
      <mrow><mi>L</mi><mo>+</mo><mi>k</mi></mrow>
      <mrow><mi>l</mi><mo>+</mo><mi>k</mi></mrow>
    </mfrac>
    <mo>&#x230B;</mo>
  </mrow>
</math>
m = |__ (L + k) / (l + k) __|
Floor[(L + k)/(l + k)]
m := floor((L + k)/(l + k));
m = floor((L + k)/(l + k));
m = ⌊(L + k)/(l + k)⌋
Listelli acquistando ogni pezzo separatamente
Bᵢ = ⌈qᵢ ÷ mᵢ⌉,  B_sep = B₁ + B₂ + …
B_i = \left\lceil \frac{q_i}{m_i} \right\rceil,\quad B_{\text{sep}} = \sum_i B_i
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
  <mrow>
    <msub><mi>B</mi><mi>i</mi></msub>
    <mo>=</mo>
    <mo>&#x2308;</mo>
    <mfrac><msub><mi>q</mi><mi>i</mi></msub><msub><mi>m</mi><mi>i</mi></msub></mfrac>
    <mo>&#x2309;</mo>
    <mo>,</mo>
    <msub><mi>B</mi><mtext>sep</mtext></msub>
    <mo>=</mo>
    <munder><mo>&#x2211;</mo><mi>i</mi></munder>
    <msub><mi>B</mi><mi>i</mi></msub>
  </mrow>
</math>
B_i = |~ q_i / m_i ~|,  B_"sep" = sum_i B_i
Total[Ceiling[q/m]]
B := add(ceil(q[i]/m[i]), i = 1 .. n);
B = sum(ceil(q ./ m));
B_i = ⌈q_i/m_i⌉, B_sep = ∑_i B_i
Taglio combinato (pezzi più lunghi per primi) e avanzi
w = L − (l₁ + l₂ + … + lₙ) − n × k
w = L - \sum_{j=1}^{n} l_j - n k
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
  <mrow>
    <mi>w</mi>
    <mo>=</mo>
    <mi>L</mi>
    <mo>&#x2212;</mo>
    <munderover><mo>&#x2211;</mo><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mi>n</mi></munderover>
    <msub><mi>l</mi><mi>j</mi></msub>
    <mo>&#x2212;</mo>
    <mi>n</mi><mo>&#x2062;</mo><mi>k</mi>
  </mrow>
</math>
w = L - sum_(j=1)^n l_j - n k
L - Total[l] - Length[l]*k
w := L - add(l[j], j = 1 .. n) - n*k;
w = L - sum(l) - numel(l)*k;
w = L − ∑_(j=1)^n l_j − nk
Minimo teorico (limite inferiore)
Bmin = ⌈Σ qᵢ(lᵢ + k) ÷ (L + k)⌉
B_{\min} = \left\lceil \frac{\sum_i q_i (l_i + k)}{L + k} \right\rceil
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
  <mrow>
    <msub><mi>B</mi><mi>min</mi></msub>
    <mo>=</mo>
    <mo>&#x2308;</mo>
    <mfrac>
      <mrow><munder><mo>&#x2211;</mo><mi>i</mi></munder><msub><mi>q</mi><mi>i</mi></msub><mo>(</mo><msub><mi>l</mi><mi>i</mi></msub><mo>+</mo><mi>k</mi><mo>)</mo></mrow>
      <mrow><mi>L</mi><mo>+</mo><mi>k</mi></mrow>
    </mfrac>
    <mo>&#x2309;</mo>
  </mrow>
</math>
B_min = |~ (sum_i q_i (l_i + k)) / (L + k) ~|
Ceiling[Total[q*(l + k)]/(L + k)]
Bmin := ceil(add(q[i]*(l[i] + k), i = 1 .. n)/(L + k));
Bmin = ceil(sum(q .* (l + k))/(L + k));
B_min = ⌈(∑_i q_i (l_i + k))/(L + k)⌉
Listelli risparmiati e costo stimato
Δ = B_sep − B,  T = u × B
\Delta = B_{\text{sep}} - B,\quad T = u \times B
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
  <mrow>
    <mi>&#x394;</mi>
    <mo>=</mo>
    <msub><mi>B</mi><mtext>sep</mtext></msub>
    <mo>&#x2212;</mo>
    <mi>B</mi>
    <mo>,</mo>
    <mi>T</mi>
    <mo>=</mo>
    <mi>u</mi>
    <mo>&#xD7;</mo>
    <mi>B</mi>
  </mrow>
</math>
Delta = B_"sep" - B,  T = u * B
{bSep - b, u*b}
Delta := Bsep - B;  T := u*B;
Delta = Bsep - B; T = u*B;
Δ = B_sep − B, T = u × B

Come chiedere a ChatGPT  di fare il calcolo

Sei un assistente per il calcolo del taglio del legno per la falegnameria. Fai il seguente calcolo eseguendo davvero codice Python e basa la risposta solo sui numeri ottenuti dall’esecuzione (non rispondere a memoria né a stima).

Da listelli da 2400 mm, con una larghezza del taglio di 3 mm, taglio quattro aste da 1000 mm, due assi da 600 mm e due barre da 400 mm.
Calcola:
1. Per ogni pezzo, il numero di pezzi per listello ((2400 + 3) ÷ (lunghezza del pezzo + 3), arrotondato all’intero inferiore)
2. Il numero totale di listelli se ogni tipo di pezzo si taglia dai propri listelli (quantità ÷ pezzi per listello, arrotondato all’intero superiore, e poi sommato)
3. Il numero di listelli mettendo per primi i pezzi più lunghi, ciascuno nel primo listello in cui entra (First Fit Decreasing), con i pezzi e l’avanzo di ogni listello (ogni pezzo messo riduce il resto del listello di «lunghezza + larghezza del taglio»)
4. Il numero minimo teorico di listelli (somma di (lunghezza + larghezza del taglio) di tutti i pezzi ÷ (2400 + 3), arrotondato all’intero superiore)

Indica il codice usato e i numeri ottenuti dall’esecuzione.

Come si usa
  1. 1
    Inserisci i numeri
    Scrivi nei campi i numeri con cui vuoi fare il calcolo
  2. 2
    Calcola
    Fai clic sul pulsante «Calcola»
  3. 3
    Guarda il risultato
    Il risultato compare subito. Nella stessa pagina trovi anche lo svolgimento del calcolo e la spiegazione della formula
  I punti di forza di DataChef
Semplice e gratuito
Conversioni gratuite e illimitate
Nessuna competenza richiesta, semplice e intuitivo
Senza registrazione
Pronto all'uso appena apri la pagina
Nessun dato personale richiesto
Sicuro e affidabile
Connessione fortemente crittografata (SSL)
Il file viene eliminato automaticamente dopo il download
Veloce
Visualizzazione e conversione rapide, senza attese
Senza filigrana
Nessuna filigrana
Nessun obbligo di attribuzione
Uso commerciale consentito
Uso commerciale gratuito
Nessuna autorizzazione preventiva necessaria