Rendere la sola parte decimale di un numero in virgola mobile come un numero di tipo Intero
Da Gambas-it.org - Wikipedia.
Versione del 10 apr 2017 alle 18:23 di Vuott (Discussione | contributi)
Per ottenere di un numero in virgola mobile la sua parte decimale priva dello zero (rappresentante la parte intera) e del punto separatore, ossia convertendola così in un numero di tipo Intero, è possibile utilizzare il seguente codice:
Public Sub Main() Dim f As Float Dim s As String Dim i As Integer f = 3.14159265 ' Otteniamo la sola parte frazionale: f = Frac(f) ' Convertiamo il valore contenuto nella variabile "f" in una Stringa: s = CStr(f) ' Prendiamo i soli valori alla destra del punto separatore, e convertiamo il numero in un Intero: i = Val(Right(s, Len(s) - 2)) Print i End
oppure anche il seguente:
Public Sub Main() Dim f As Float Dim s As String Dim i As Integer f = 3.14159265 ' Convertiamo il valore contenuto nella variabile "f" in una Stringa: s = CStr(f) ' Estraiamo la parte della stringa a destra del punto, corrispondente alla parte frazionaria del numero in virgola mobile originario: s = Scan(s, "*.*")[1] ' Convertiamo in un valore numerale "Intero" la rappresentazione stringa del numero estratto: i = Val(s) Print i End