Differenze tra le versioni di "Rendere la sola parte decimale di un numero in virgola mobile come un numero di tipo Intero"

Da Gambas-it.org - Wikipedia.
(Creata pagina con "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 num...")
 
 
(Una versione intermedia di uno stesso utente non è mostrata)
Riga 1: Riga 1:
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:
+
Per ottenere di un numero in virgola mobile la sua parte decimale priva dello zero (rappresentante la parte intera) e del punto separatore, convertendola così in un numero di tipo ''Intero'' vero e proprio, è possibile utilizzare il seguente codice:
  Public Sub Main()
+
  '''Public''' Sub Main()
 
    
 
    
 
   Dim f As Float
 
   Dim f As Float
Riga 16: Riga 16:
 
  <FONT Color=gray>' ''Prendiamo i soli valori alla destra del punto separatore, e convertiamo il numero in un Intero:''</font>
 
  <FONT Color=gray>' ''Prendiamo i soli valori alla destra del punto separatore, e convertiamo il numero in un Intero:''</font>
 
   i = Val(Right(s, Len(s) - 2))
 
   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
 +
 
 +
<FONT Color=gray>' ''Convertiamo il valore contenuto nella variabile "f" in una Stringa:''</font>
 +
  s = CStr(f)
 +
 
 +
<FONT Color=gray>' ''Estraiamo la parte della stringa a destra del punto, corrispondente alla parte frazionaria del numero in virgola mobile originario:''</font>
 +
  s = Scan(s, "*.*")[1]
 +
 
 +
<FONT Color=gray>' ''Convertiamo in un valore numerale "Intero" la rappresentazione stringa del numero estratto:''</font>
 +
  i = Val(s)
 
    
 
    
 
   Print i
 
   Print i
 
    
 
    
 
  '''End'''
 
  '''End'''

Versione attuale delle 18:24, 10 apr 2017

Per ottenere di un numero in virgola mobile la sua parte decimale priva dello zero (rappresentante la parte intera) e del punto separatore, convertendola così in un numero di tipo Intero vero e proprio, è 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