View Single Post
Old 26-06-2009, 15:24   #5
gugoXX
Senior Member
 
L'Avatar di gugoXX
 
Iscritto dal: May 2004
Cittā: Londra (Torino)
Messaggi: 3692
Dunque.
Sei prendi un intervallo tipo
3.2 --> 7.5
questo e' un intervallo della retta reale, che parte dal punto 3.2 e arriva fino a 7.5
La lunghezza di tale intervallo e' 4.3

Un po' come dire: Ho dipinto di bianco la strada a partire dal Kilometro 3.2 fino al Kilometro 7.5
La domanda sarebbe quindi: Quanti Kilometri di strada ho coperto di bianco? 4.3Km finora, appunto.

Aggiungiamo un altro intervallo, quello
10.4 --> 12.7
e la cui lunghezza e' 2.3

E poi un altro ancora, da
11.9 --> 12.9, la cui lunghezza e' 1.0

Potrebbe venire da dire che la lunghezza totale coperta sia da
4.3 + 2.3 + 1.0 = 7.6

E invece no.
Questo ultimo intervallo e' parzialmente sovrapposto all'intervallo precedente. Per un pezzo di strada ho semplicemente ripittato un pochino, ma era gia' bianca, non conta 2 volte.

Riusciamo a coprire quindi tutto il primo
3.2 --> 7.5
poi il secondo
10.4 --> 12.7
e poi del terzo aggiungiamo solo una piccola fettina
12.7 --> 12.9, perche' la prima parte del terzo era gia' coperta precedentemente.
Abbiamo quindi un totale di 4.3 + 2.3 + 0.2 = 6.8

E' OK?


Nell'esempio abbiamo anche coordinate di partenza negative. Un po' come mettere casa mia al centro di una lunghissima strada diritta, e dire che se vado a sinistra ho coordinate negative e a destra coordinate positive.
Per l'esempio dato abbiamo:
-4.5 --> +3.2 Lunghezza = 7.7
Ovvero sono partito a dipingere 4.5KM a sinistra di casa mia, e ho finito 3.2KM a destra di casa mia.

Poi
+2.8 --> +7.15 E gia' qui sovrappoiniamo, quindi vale solo come se fosse da
+3.2 --> 7.15 = 3.95

E infine
-7.3 --> -9.15, ovvero parto da 7.3KM a sinistra e proseguo fino a 9.15 KM a sinistra, senza sovrapporre niente quindi.
La lunghezza conta tutta, ovvero 1.85KM

Totale 7.7 + 3.95 + 1.85 = 13.5
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto.
E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test.

Ultima modifica di gugoXX : 26-06-2009 alle 15:32.
gugoXX č offline   Rispondi citando il messaggio o parte di esso