Differenze tra le versioni di "Ottenere dalla funzione Format() un valore con il punto anziché con la virgola"

Da Gambas-it.org - Wikipedia.
 
Riga 1: Riga 1:
Nel primo caso in esame si ha un tipo di dato numerico in virgola mobile e si intende ottenere come risultato finale anche una rappresentazione di esso con il punto anziché con la virgola.
+
#REDIRECT [[Ottenere_di_un_numero_in_virgola_mobile_la_rappresentazione_del_separatore_con_il_punto_anziché_con_la_virgola]]
<BR>Per fare ciò si dovrà adoperare adeguatamente le funzioni native "Format()" e "CStr()".
 
'''Public''' Sub Main()
 
 
 
  Dim f As Float
 
  Dim s As String
 
 
 
<FONT Color=gray>' ''Essendo il valore numerico assegnato ad un tipo di dati numerico in virgola mobile ("Float"), il simbolo separatore non può essere altro ovviamente che il punto:''</font>
 
  f = 12345.6789
 
 
 
<FONT Color=gray>' ''Così si ottiene una rappresentazione testuale con la virgola del numero:''</font>
 
  Print f
 
 
 
<FONT Color=gray>' ''Già così si ottiene una rappresentazione testuale del numero con il punto anziché con la virgola:''</font>
 
  s = CStr(f)
 
  Print s
 
 
 
<FONT Color=gray>' ''Quindi gestisce la stringa di quel numero mediante la funzione "Format()":''</font>
 
  f = Val(Format$(s, "#.####"))
 
 
 
<FONT Color=gray>' ''Così si ottiene finalmente la rappresentazione testuale finale del numero, manipolato con la funzione "Format()", con il punto anziché con la virgola:''</font>
 
  Print CStr(f)
 
 
'''End'''
 
 
 
==Caso in cui il numero in virgola mobile è una rappresentato da una Stringa e presenta come separatore la virgola==
 
In questo caso il numero in virgola mobile è rappresentato da una stringa di caratteri. Il simbolo separatore dei decimali è la virgola, e si intende ottenere alla fine, come separatore, un punto.
 
<BR>Anche in questo caso si farà uso delle funzioni native "Format()" e "CStr()".
 
'''Public''' Sub Main()
 
 
 
  Dim f As Float
 
  Dim s As String = "12345,6789"
 
 
 
<FONT Color=gray>' ''Effettua il primo passaggio necessario:''</font>
 
  f = Val(s)
 
 
 
<FONT Color=gray>' ''Quindi manipola la stringa di quel numero mediante la funzione "Format()":''</font>
 
  f = Val(Format$(f, "#.####"))
 
 
 
<FONT Color=gray>' ''Così si ottiene ancora una rappresentazione testuale con la virgola:''</font>
 
  Print f
 
 
 
<FONT Color=gray>' ''Ora finalmente si ottiene una rappresentazione testuale con il punto:''</font>
 
  Print CStr(f)
 
 
 
'''End'''
 
 
 
Una seconda modalità prevede più rapidamente l'uso della funzione nativa "Replace()":
 
'''Public''' Sub Main()
 
 
 
  Dim s As String = "12345,6789"
 
 
 
<FONT Color=gray>' ''Quindi si ottiene una rappresentazione testuale con il punto:''</font>
 
  Print Replace(s, ",", ".")
 
 
 
'''End'''
 

Versione attuale delle 09:07, 29 apr 2021