# Formato numeri

**URL:** <https://it.discourse.mcneel.com/t/formato-numeri/4219>\
**Category:** Grasshopper\
**Created:** [1 Settembre 2021, 4:07pm UTC](https://it.discourse.mcneel.com/t/formato-numeri/4219 "2021-09-01T16:07:58Z")\
**Posts on this page:** 20\
**Page:** 2

<div class="post-metadata">

**Author:** ![emilio](https://sea3.discourse-cdn.com/mcneel/user_avatar/it.discourse.mcneel.com/emilio/32/16095_2.png) [@emilio](https://it.discourse.mcneel.com/u/emilio)\
**Post date:** [6 Settembre 2021, 6:09pm UTC](https://it.discourse.mcneel.com/t/formato-numeri/4219/21 "2021-09-06T18:09:10Z")

</div>

> [@0904](#):
>
> intendevo una volta internalizzati i valori all’interno della casella di testo  
> riscontrerai tutti numeri interi e si presenta il problema, ma avendo accortezza di fare questa prova:  
> calcelli un valore qualsiasi oppure in fondo alla lista elimini o aggiungi un rigo tutto funziona perfettamente

Ragazzi, da ignorante in GH azzardo una ipotesi … 🙄 😉 😄

Non e’ che c’e’ differenza se inserisci semplicemente il Panel in un collegamento, e quindi lui ti mostra i dati formattati come sempre ma non li trasmette tra input e output senza ‘toccarli’ …  
O se invece editi i dati nel Panel, e in questo caso l’ouput sara’ di testo, e quindi i numeri, ad esempio, vengono ricavati dal testo mostrato ?

… Non so se sono stato spiegato … 😉 😄  
Temo di no, va be’, non importa.

---

<div class="post-metadata">

**Author:** ![inno](https://sea3.discourse-cdn.com/mcneel/user_avatar/it.discourse.mcneel.com/inno/32/22019_2.png) [@inno](https://it.discourse.mcneel.com/u/inno)\
**Post date:** [6 Settembre 2021, 7:49pm UTC](https://it.discourse.mcneel.com/t/formato-numeri/4219/22 "2021-09-06T19:49:24Z")

</div>

> [@emilio](#):
>
> … Non so se sono stato spiegato …

si, direi che è proprio il punto del problema 👍

 ![image](https://global.discourse-cdn.com/mcneel/uploads/mcneel_it/original/2X/0/03a77458c9bd4fd05f05111a13700efa88e50041.png)

---

<div class="post-metadata">

**Author:** ![emilio](https://sea3.discourse-cdn.com/mcneel/user_avatar/it.discourse.mcneel.com/emilio/32/16095_2.png) [@emilio](https://it.discourse.mcneel.com/u/emilio)\
**Post date:** [6 Settembre 2021, 8:18pm UTC](https://it.discourse.mcneel.com/t/formato-numeri/4219/23 "2021-09-06T20:18:17Z")

</div>

> [@inno](#):
>
> è proprio il punto

Puo’ darsi… 🙂 Ma nel senso che non e’ come supponevo … 😕

[panel-test.gh](https://it.discourse.mcneel.com/uploads/short-url/5x7zzWbyRjdjNrSf7jQdeogQucX.gh) (7,6 KB)

 ![image](https://global.discourse-cdn.com/mcneel/uploads/mcneel_it/original/2X/0/0ab77e5e1da675daf0446abf0e54d2d3a42d90ba.png)

Sembra che il Panel traduca in ogni caso i dati in testo.

Non so … forse Salvio parla di altro (non di un Panel) …

Meglio che ripassi la parola a voi esperti … 😊 😄

---

<div class="post-metadata">

**Author:** ![0904](https://avatars.discourse-cdn.com/v4/letter/0/b3f665/32.png) [@0904](https://it.discourse.mcneel.com/u/0904)\
**Post date:** [6 Settembre 2021, 9:55pm UTC](https://it.discourse.mcneel.com/t/formato-numeri/4219/24 "2021-09-06T21:55:28Z")

</div>

> [@emilio](#):
>
> Non so … forse Salvio parla di altro (non di un Panel) …

se intendi quando dici: “editi i dati nel Panel”  
io intendo nel “Set Multiple Numbers” questo ovviamente una volta internalizzati i valori all’interno  
quando internalizzi i valori e come se li copiassi e te li trovi nel sottomenù “Set Multiple Numbers”  
ed è in questa casella che io dico che bisogna aggiungere o eliminare l’ultimo rigo  
e a questo punto senza nemmeno convertire i valori Equal funziona come dovrebbe.

ps ovviamente questo non cambia che come si è capito non bisogna assolutamente comparare valori float  
però nel caso uno si trovasse con dei valori numerici internalizzati apparentemente interi si ricordasse di ciò

> [@emilio](#):
>
> Meglio che ripassi la parola a voi esperti …

io sicuramente nel fare casini 🤣 🤣

---

<div class="post-metadata">

**Author:** ![0904](https://avatars.discourse-cdn.com/v4/letter/0/b3f665/32.png) [@0904](https://it.discourse.mcneel.com/u/0904)\
**Post date:** [8 Settembre 2021, 1:10am UTC](https://it.discourse.mcneel.com/t/formato-numeri/4219/25 "2021-09-08T01:10:32Z")

</div>

@inno @emilio non essendo pratico mediante queste verifiche con calcoli matematici, ma necessito di fare prove con un confronto pratico, e ricordando che in una definizione avevo replicato questa condizione:  
un punto con coordinate 0 usando un serial n volte su asse X per poi spostarli a random su asse Z  
tale operazione fatta manualmente in Rh, ma anche tramite componenti in Gh si ha questo risultato:

 ![dec](https://global.discourse-cdn.com/mcneel/uploads/mcneel_it/original/2X/7/7fb5a63fbd55b0cb0efc5ea2cd4e2d6304c65a06.jpeg)

come si può notare, i valori X mostra 4 item in decimali separati dal “punto” seguito dallo “0”  
apparentemente interi come gli altri, ma moltiplicandoli col Power si riscontra la situazione detta finora.  
quindi si può pensare che nella stesura del codice sia stata inclusa questa ipotesi, di differenziare i valori?  
quindi riassumendo quando troviamo valori 50 60 70 sono veramente interi, mentre quando visualizziamo valori come 20.0 o 40.0 anche se sembrano interi in realtà indicano che sono dei valori con dei decimali.

ovviamente ogni tesi è fatta per essere smentita, infatti se aumento il power oltre 10 diventano tutti decimali  
ma credo che questo sia riconducibile al fatto che qualsiasi numero corrisponda ad una sequenza binaria  
(cosa che Emilio non si è sprecato a spiegarmelo in altro post con 1000 modi)  
considerando la conversione binaria, alla fine si può concludere che nessun numero è un vero intero?

---

<div class="post-metadata">

**Author:** ![inno](https://sea3.discourse-cdn.com/mcneel/user_avatar/it.discourse.mcneel.com/inno/32/22019_2.png) [@inno](https://it.discourse.mcneel.com/u/inno)\
**Post date:** [8 Settembre 2021, 7:15am UTC](https://it.discourse.mcneel.com/t/formato-numeri/4219/26 "2021-09-08T07:15:34Z")

</div>

> [@0904](#):
>
> quindi riassumendo quando troviamo valori 50 60 70 sono veramente interi, mentre quando visualizziamo valori come 20.0 o 40.0 anche se sembrano interi in realtà indicano che sono dei valori con dei decimali

no, sono tutti float 🙂 magari son tutti “numeri tondi” (e quindi quando li passi nel Panel non ti visualizza la parte decimale) ma possiedono comunque una parte decimale, e la confusione è data solo dal fatto che il Panel non la visualizzi

 ![image](https://global.discourse-cdn.com/mcneel/uploads/mcneel_it/original/2X/1/1186ad09af3913f433962311e30335e46aa10c18.png)

in generale, andando con il puntatore del mouse su qualsiasi input/output ti va vedere il type

 ![image](https://global.discourse-cdn.com/mcneel/uploads/mcneel_it/original/2X/6/672f69d8e2f5adb4f29376f08eaa877e5f0ce135.png)

l’icona “0.1” rappresenta un numero con parte decimale, l’icona con un “7” rappresenta un intero

 ![image](https://global.discourse-cdn.com/mcneel/uploads/mcneel_it/original/2X/3/3af6bad731849adf1515437d9e31cfaf88e200e9.png)

le uniche situazioni in cui GH ti da un output di tipo int mi vien da pensare sia in contesto Liste, in particolare su Index, Count, ecc etc

 ![image](https://global.discourse-cdn.com/mcneel/uploads/mcneel_it/original/2X/a/a1c26d9d6b581a1513d590f0940752010b6e8398.png)

 ![image](https://global.discourse-cdn.com/mcneel/uploads/mcneel_it/original/2X/7/7175fe411f1f706283ebdca01df5bb4a119ee58e.png)

---

<div class="post-metadata">

**Author:** ![0904](https://avatars.discourse-cdn.com/v4/letter/0/b3f665/32.png) [@0904](https://it.discourse.mcneel.com/u/0904)\
**Post date:** [8 Settembre 2021, 12:28pm UTC](https://it.discourse.mcneel.com/t/formato-numeri/4219/27 "2021-09-08T12:28:10Z")

</div>

> [@inno](#):
>
> no, sono tutti float 🙂 magari son tutti “numeri tondi”

esatto, ho mancato di specificarlo era proprio questo che volevo sottolineare, che float scinde i numeri  
pur essendo tutti numeri float, però li divide in numeri tondi 50 60 70 e numeri con decimali 20.0 o 40.0

ps di sicuro per voi esperti il risultato di questa foto non’é una novità:

 ![dec2](https://global.discourse-cdn.com/mcneel/uploads/mcneel_it/original/2X/a/a14160f5481d3fbd4e761933afed4e7b14690cfe.jpeg)

moltiplicando con power, quando il numero è visualizzato come 10 riporta intero  
mentre viceversa, quando il numero è visualizzato come 20.0 riporta come float

tempo fa quando aprii il 3d sui decimali era proprio questo che non comprendevo,  
per il ragionamento che facevo, di default in Gh mi aspettavo il risultato con power

---

<div class="post-metadata">

**Author:** ![inno](https://sea3.discourse-cdn.com/mcneel/user_avatar/it.discourse.mcneel.com/inno/32/22019_2.png) [@inno](https://it.discourse.mcneel.com/u/inno)\
**Post date:** [8 Settembre 2021, 1:27pm UTC](https://it.discourse.mcneel.com/t/formato-numeri/4219/28 "2021-09-08T13:27:53Z")

</div>

string che diventa float che ritorna string che ridiventa float e poi finisce int 🙂

 ![image](https://global.discourse-cdn.com/mcneel/uploads/mcneel_it/original/2X/6/6073668535325987d8efddc010c04adc38eab7f8.png)

---

<div class="post-metadata">

**Author:** ![0904](https://avatars.discourse-cdn.com/v4/letter/0/b3f665/32.png) [@0904](https://it.discourse.mcneel.com/u/0904)\
**Post date:** [8 Settembre 2021, 1:54pm UTC](https://it.discourse.mcneel.com/t/formato-numeri/4219/29 "2021-09-08T13:54:15Z")

</div>

![6073668535325987d8efddc010c04adc38eab7f8](https://global.discourse-cdn.com/mcneel/uploads/mcneel_it/original/2X/c/cfc48a53e30edd00ed8ebc953d4ee89829fe1c56.png)

1. questo ormai è lapalissiano, qualsiasi valore in uscita dal panel è una stringa
2. mentre dal panel collegandoli a componenti con uscita numero riporti numero
3. interessante che l’elemento con indice 0 sia un numero intero e non un float

> [@0904](#):
>
> considerando la conversione binaria, alla fine si può concludere che nessun numero è un vero intero?

ps spero che questa affermazione non sia una vera è propria boiata?

---

<div class="post-metadata">

**Author:** ![emilio](https://sea3.discourse-cdn.com/mcneel/user_avatar/it.discourse.mcneel.com/emilio/32/16095_2.png) [@emilio](https://it.discourse.mcneel.com/u/emilio)\
**Post date:** [9 Settembre 2021, 8:03pm UTC](https://it.discourse.mcneel.com/t/formato-numeri/4219/30 "2021-09-09T20:03:49Z")

</div>

> [@0904](#):
>
> si può concludere che nessun numero è un vero intero?

Non direi, Salvio …  
Ovviamente i numeri di tipo ‘int’ sono degli interi.  
Anche il tipo ‘float’ puo’ rappresentare esattamente parecchi interi …  
Non sono in grado di dirti quanti, ma credo almeno tutti quelli fino a 2^52 (o 53 😕) … e credo anche altri …  
Ci vorrebbe qualcuno ferrato in matematica … 😐

---

<div class="post-metadata">

**Author:** ![0904](https://avatars.discourse-cdn.com/v4/letter/0/b3f665/32.png) [@0904](https://it.discourse.mcneel.com/u/0904)\
**Post date:** [9 Settembre 2021, 10:45pm UTC](https://it.discourse.mcneel.com/t/formato-numeri/4219/31 "2021-09-09T22:45:51Z")

</div>

![dec](https://global.discourse-cdn.com/mcneel/uploads/mcneel_it/original/2X/e/e7aa266477d657e6b1a1b1affb383f04008de8bc.jpeg)

mi riferivo ad una situazione come quella della foto che ho già postato nel messaggio 25:  
come vedi nei primi 2 panel vengono evidenziati i quanttro valori che hanno i decimali, mentre nell’ultimo panel (dove il power l’ho impostato a 10) alla fine si sono trasformati tutti in decimali anche quelli interi.

ps non avevo fatto caso, come l’ultima foto di Inno, anche l’indice 0 in questo caso è rimasto intero 🤔  
io non sono esperto in queste cose lo sai, mi sono basato sulla pratica fatta, mi sarei dovuto fermare già da tempo, per adesso è meglio che faccio finta di aver capito qualcosina in più e mi ritiro contento 😅

---

<div class="post-metadata">

**Author:** ![emilio](https://sea3.discourse-cdn.com/mcneel/user_avatar/it.discourse.mcneel.com/emilio/32/16095_2.png) [@emilio](https://it.discourse.mcneel.com/u/emilio)\
**Post date:** [10 Settembre 2021, 5:41am UTC](https://it.discourse.mcneel.com/t/formato-numeri/4219/32 "2021-09-10T05:41:52Z")

</div>

> [@0904](#):
>
> alla fine si sono trasformati tutti in decimali anche quelli interi.

Credo che qui sia solo un problema di ‘dimensioni’, per cosi’ dire … 😉  
Quei numeri sono troppo grandi per essere rappresentati da un ‘int’, almeno in C#, che credo sia utilizzato per GH.  
Ma il loro valore potrebbe benissimo essere esatto, cioe’ corrispondere ad un numero intero.  
( Direi esclusi i 4 numeri evidenziati, che gia’ in partenza paiono non essere interi )

---

<div class="post-metadata">

**Author:** ![emilio](https://sea3.discourse-cdn.com/mcneel/user_avatar/it.discourse.mcneel.com/emilio/32/16095_2.png) [@emilio](https://it.discourse.mcneel.com/u/emilio)\
**Post date:** [10 Settembre 2021, 8:12am UTC](https://it.discourse.mcneel.com/t/formato-numeri/4219/33 "2021-09-10T08:12:55Z")

</div>

Aspetta … devo aver detto una cavolata.  
Pensavo agli int a 32 bit, pero’ oggi di solito si usano quelli a 64 bit …  
Mah.  
Forse e’ una scelta di GH di mostrare come float gli interi per cui servono piu’ di 32 bit …  
😕

---

<div class="post-metadata">

**Author:** ![0904](https://avatars.discourse-cdn.com/v4/letter/0/b3f665/32.png) [@0904](https://it.discourse.mcneel.com/u/0904)\
**Post date:** [10 Settembre 2021, 9:01am UTC](https://it.discourse.mcneel.com/t/formato-numeri/4219/34 "2021-09-10T09:01:23Z")

</div>

e vabbè Emilio, il fatto che hai delle perplessità in merito, un pò mi consola 😉  
(forse non’é proprio un argomento scontato)

---

<div class="post-metadata">

**Author:** ![RiccardoMajewski](https://sea3.discourse-cdn.com/mcneel/user_avatar/it.discourse.mcneel.com/riccardomajewski/32/22945_2.png) [@RiccardoMajewski](https://it.discourse.mcneel.com/u/RiccardoMajewski)\
**Post date:** [10 Settembre 2021, 4:01pm UTC](https://it.discourse.mcneel.com/t/formato-numeri/4219/35 "2021-09-10T16:01:46Z")

</div>

> [@emilio](#):
>
> Sembra che il Panel traduca in ogni caso i dati in testo.

È esattamente così.

 ![2021-09-10 17_49_12-Window](https://global.discourse-cdn.com/mcneel/uploads/mcneel_it/original/2X/9/9ada41958ea4030399171148b8fda96ee35a1978.png)

**MAI** usare l’output di un panel se il dato originario era prima del panel. … salvo che uno sappia esattamente cosa sta facendo.

* * *

> [@0904](#):
>
> forse non’é proprio un argomento scontato

In realtà lo è…

Salvio … non vorrei essere scortese, ma un thread così lungo a-la “caccia al tesoro” solo perché non hai voluto caricare il .gh in questione… è ormai abbastanza inutile.

Se arginavi il problema in maniera semplice e lo allegavi qui nel forum il problema sarebbe stato risolto e ti sarebbe stato colmato ogni dubbio in 3-4 risposte.

Io non sono un mod o altro, questa è solo un’opinione.

---

<div class="post-metadata">

**Author:** ![RiccardoMajewski](https://sea3.discourse-cdn.com/mcneel/user_avatar/it.discourse.mcneel.com/riccardomajewski/32/22945_2.png) [@RiccardoMajewski](https://it.discourse.mcneel.com/u/RiccardoMajewski)\
**Post date:** [10 Settembre 2021, 4:35pm UTC](https://it.discourse.mcneel.com/t/formato-numeri/4219/36 "2021-09-10T16:35:59Z")

</div>

> [@0904](#):
>
> interessante che l’elemento con indice 0 sia un numero intero e non un float

…  
Il componente della moltiplicazione si trova ad interpretare la stringa che gli fornisci e quindi a convertirla in un tipo moltiplicabile (per ogni input fa tentativi tra int, float, complesso, vettore, colore, ecc ecc).

Semplicemente il primo numero della serie che hai creato è il default, 0, un numero senza decimali, e quindi lo ha convertito sin da subito in un numero intero, 0.  
Moltiplicalo quante volte vuoi e rimarrà 0 tondo tondo.

Se avesse trovato dei decimali nella stringa, lo avrebbe interpretato come float:

 ![2021-09-10 18_46_24-Window](https://global.discourse-cdn.com/mcneel/uploads/mcneel_it/original/2X/e/e22674bdad648927993093661b8e6dd0ef4010e8.png)

* * *

Se un panel ti scrive “5.0” il “.0” è tanto per dirti che non è un numero intero, ma “5+qualcosina”

Al contrario il multiplication, se vede un punto . (ovvero un separatore di decimali) , interpreta il numero come float a prescindere.

---

<div class="post-metadata">

**Author:** ![emilio](https://sea3.discourse-cdn.com/mcneel/user_avatar/it.discourse.mcneel.com/emilio/32/16095_2.png) [@emilio](https://it.discourse.mcneel.com/u/emilio)\
**Post date:** [11 Settembre 2021, 1:25pm UTC](https://it.discourse.mcneel.com/t/formato-numeri/4219/37 "2021-09-11T13:25:01Z")

</div>

Ciao Riccardo

Quindi sembra che GH utilizzi gli interi a 32 bit … giusto ? 😕

---

<div class="post-metadata">

**Author:** ![RiccardoMajewski](https://sea3.discourse-cdn.com/mcneel/user_avatar/it.discourse.mcneel.com/riccardomajewski/32/22945_2.png) [@RiccardoMajewski](https://it.discourse.mcneel.com/u/RiccardoMajewski)\
**Post date:** [11 Settembre 2021, 1:57pm UTC](https://it.discourse.mcneel.com/t/formato-numeri/4219/38 "2021-09-11T13:57:00Z")

</div>

Esatto.  
Il numero più grande che può contenere è 2147483647, ovvero 2^31-1.  
32 bit, di cui 1 usato per il segno.  
 ![2021-09-11 15_56_33-Window](https://global.discourse-cdn.com/mcneel/uploads/mcneel_it/original/2X/b/b35bdc976be4a4959f1c0a57c03948b6253075f6.png)

![2021-09-11 16_03_22-Window](https://global.discourse-cdn.com/mcneel/uploads/mcneel_it/original/2X/5/5e18194fc255034ac6540055fea9e4ecbc01cf50.png)

---

<div class="post-metadata">

**Author:** ![luca.filippone](https://sea3.discourse-cdn.com/mcneel/user_avatar/it.discourse.mcneel.com/luca.filippone/32/16173_2.png) [@luca.filippone](https://it.discourse.mcneel.com/u/luca.filippone)\
**Post date:** [11 Settembre 2021, 2:53pm UTC](https://it.discourse.mcneel.com/t/formato-numeri/4219/39 "2021-09-11T14:53:50Z")

</div>

Penso perché GH è realizzato in C# e si appoggia alle librerie .NET per le quali il tipo valore int é a 32 bit.

---

<div class="post-metadata">

**Author:** ![luca.filippone](https://sea3.discourse-cdn.com/mcneel/user_avatar/it.discourse.mcneel.com/luca.filippone/32/16173_2.png) [@luca.filippone](https://it.discourse.mcneel.com/u/luca.filippone)\
**Post date:** [11 Settembre 2021, 3:00pm UTC](https://it.discourse.mcneel.com/t/formato-numeri/4219/40 "2021-09-11T15:00:07Z")

</div>

> [@RiccardoMajewski](#):
>
> Al contrario il multiplication, se vede un punto . (ovvero un separatore di decimali) , interpreta il numero come float a prescindere

Questo è il. Net che converte il double in int perché è un operazione che può fare senza perdite di dati e senza errori.

[Pagina precedente](https://it.discourse.mcneel.com/t/formato-numeri/4219.md?page=1)

[Pagina seguente](https://it.discourse.mcneel.com/t/formato-numeri/4219.md?page=3)
