Partagez votre expérience de PureBasic avec les autres utilisateurs.
Ollivier
Messages : 4197 Inscription : ven. 29/juin/2007 17:50
Localisation : Encore ?
Contact :
Message
par Ollivier » jeu. 21/avr./2022 22:20
Code : Tout sélectionner
Procedure.S ISU(X.D)
S = Sign(X)
X = Abs(X)
Y = Log10(X)
Z = (Y + 8) / 3 + 1
ProcedureReturn StrD(X * Pow(10, 3 * (4 - Z) ) * S) + StringField("nano;micro;milli;;kilo;mega;giga", Z, ";")
EndProcedureExemple:
Code : Tout sélectionner
Define x.D
For i = 1 to 20
x = Random(999) * Pow(10, Random(18) - 9)
Debug StrD(x) + " " + ISU(x)
Next
Kwai chang caine
Messages : 7027 Inscription : sam. 23/sept./2006 18:32
Localisation : Isere
Message
par Kwai chang caine » mar. 26/avr./2022 10:51
Bon c'est sûr on est pas noyé sous les commentaires
Mais sympas ton code qui permet de convertir en une unité textuelle, après j'ai pas trop compris comment il la choisie..
Merci pour le partage
Ollivier
Messages : 4197 Inscription : ven. 29/juin/2007 17:50
Localisation : Encore ?
Contact :
Message
par Ollivier » mar. 26/avr./2022 11:37
Kcc a écrit : après j'ai pas trop compris comment il la choisie..
Ben il la choisit de manière à ce que la lecture de la valeur fasse moins mal au crâne.
Kwai chang caine
Messages : 7027 Inscription : sam. 23/sept./2006 18:32
Localisation : Isere
Message
par Kwai chang caine » jeu. 28/avr./2022 18:44
Ah d'accord !!! il est trop gentil ton code de penser à nos pauvres cerveaux trop souvent malmenés