bonjour tlm,
- je travail avec des réels qui peuvent avoir 3 ou 4 numéro aprés la virgule mais je vais affiché seulement 2 chiffre aprés la virgule.
- est ce qu'il y a un moyen direct pour le fair ou il faut tous programmé :roll:
Merci
Version imprimable
bonjour tlm,
- je travail avec des réels qui peuvent avoir 3 ou 4 numéro aprés la virgule mais je vais affiché seulement 2 chiffre aprés la virgule.
- est ce qu'il y a un moyen direct pour le fair ou il faut tous programmé :roll:
Merci
Regardes du côté de la fonction FormatFloat
ou RoundTo :mrgreen:
merci beaucoup les amis
- d'aprés ce que j'ai pu voir dans l'aide sur ces Fonction "FormatFloat et RoundTo" c'est exactement la solution de mon probleme
- MAIS je suis vraiment null en anglais ;) et le help de mon builder est en anglais
- alors s'il vous plai si vous pouvais me donner un exemple
- de ma part je vais attaquer la traduction ;)
Et encore Merci
Voilà ta traduction :D
Citation:
Envoyé par Aide sur FormatFloat en FR
asRemise est une AnsiString, je la transforme en Float en utilisant StrToFloat et RoundTo me renvoie le Float avec deux chiffres après la virgule. Si je n'ai pas compris de travers, c'est ce que tu veux.Code:RoundTo(StrToFloat(asRemise),-2);
Salut,
Pour ton affichage, tu peux utiliser la fonction FloatToStrF
Par exemple:Code:
1
2 extern PACKAGE AnsiString __fastcall FloatToStrF(Extended Value, TFloatFormat Format, int Precision, int Digits);
Pour Value valant 1,2345 la fonction retourne un AnsiString "1,23".Code:FloatToStrF(Value, ffFixed, 6, 2);
Merci les amis c'est vraiment trés gentil
- mais malhereusement meme avec tous ces explication et ces exemple je n'est pas réussi a régler mon probleme :-(
- oui je sait le probleme vient de moi mais apres tous ce temps j croi que vous vous etes habitués a moi (vraiment nulll mon probleme peut etre se situe dans la langue ou c moi qui suit tres lent a comprendre 70% la deuxieme)
En tous cas encore merci camarades c'est trés gentil
avec roundto : j'ai le message function non déffini
avec floattostrF :
E2015 Ambiguïté entre '_fastcall Sysutils::FloatToStrF(long double,Sysutils::TFloatFormat,int,int)' et '_fastcall FloatToStrF(long double,Sysutils::TFloatFormat,int,int)'
- bien sur je comprendrai bien si vous ne pouvais pas m'expliquer plus ;)
Je ne vois pas trop le soucis pour le FloatToStrF, il me faudrait ton code pour mieux voir.
Voilà un autre exemple:
cela affiche "1,23".Code:
1
2
3 float valeur = 1.234; Label1->Caption = FloatToStrF(valeur,ffFixed,4,2);
Si cela peut t'aider...
Pour RoundTo, il faut que tu inclus la bibliothèque nécessairePour l'autre fonction essaie :Code:#include <Math.hpp>
pour reprendre le code de BanditBoy.Code:Label1->Caption = Sysutils::FloatToStrF(valeur,ffFixed,4,2);
Enfin j'ai prouvé a moi meme que je ne suis pas trop null mais seulement lent a comprendre ;)
voila la solution que j'ai trouvé en utilisant la fonction proposé par mon ami "bakaneko"
- il suffit apres d'appeler cette fonction avec comme paramettre la chaine à transformer ;-)Code:
1
2
3
4
5
6 String Forma(String a) { long double z = StrToFloat(a); s=FormatFloat("####,###.00",z); return s; }
GROS GROS MERCI A VOUS TOUS POUR VOS REPONSES ET VOTRE PATIENCE AVEC MOI :D