Differenze tra le versioni di "Ottenere la parte intera e quella decimale di un numero in virgola mobile"
Da Gambas-it.org - Wikipedia.
Riga 40: | Riga 40: | ||
Print Frac(5 / 3) | Print Frac(5 / 3) | ||
− | <FONT Color=gray>' ''Con la funzione "Split()" (viene estratta senza lo zero né la virgola):''</font> | + | <FONT Color=gray>' ''Con la funzione "Split()" (viene estratta senza lo zero né la virgola, ossia solo i numeri grezzi che compongono la parte):''</font> |
Print Val(Split(CStr(5 / 3), ".")[1]) | Print Val(Split(CStr(5 / 3), ".")[1]) | ||
− | <FONT Color=gray>' ''Con la funzione "Scan()" (viene estratta senza lo zero né la virgola):''</font> | + | <FONT Color=gray>' ''Con la funzione "Scan()" (viene estratta senza lo zero né la virgola, ossia solo i numeri grezzi che compongono la parte):''</font> |
Print Scan(CStr(5 / 3), "*.*")[1] | Print Scan(CStr(5 / 3), "*.*")[1] | ||
'''End''' | '''End''' |
Versione delle 13:21, 29 ott 2014
Per estrarre da un numero in virgola mobile sia la parte intera che quella decimale, è possibile adoperare complessivamente almeno 5 modalità.
Ottenere la parte intera
Si potrà ottenere la parte intera di un numero in virgola mobile mediante le seguenti funzioni:
- Fix();
- Int();
- Split();
- Scan().
Esempio pratico:
Public Sub Main() ' Con la funzione "Fix()": Print Fix(5 / 3) ' Con la funzione "Int()" (con un numero positivo): Print Int(5 / 3) ' Con la funzione "Split()": Print Val(Split(CStr(5 / 3), ".")[0]) ' Con la funzione "Scan()": Print Scan(CStr(5 / 3), "*.*")[0] End
Ottenere la parte decimale
Si potrà ottenere la parte decimale di un numero in virgola mobile mediante le seguenti funzioni:
- Frac();
- Split();
- Scan().
Esempio pratico:
Public Sub Main() ' Con la funzione "Frac()": Print Frac(5 / 3) ' Con la funzione "Split()" (viene estratta senza lo zero né la virgola, ossia solo i numeri grezzi che compongono la parte): Print Val(Split(CStr(5 / 3), ".")[1]) ' Con la funzione "Scan()" (viene estratta senza lo zero né la virgola, ossia solo i numeri grezzi che compongono la parte): Print Scan(CStr(5 / 3), "*.*")[1] End