Comment transformer un prix en FRANCS -> EUROS (PHP)

Comment transformer un prix en FRANCS -> EUROS (PHP) - Programmation

Marsh Posté le 10-04-2001 à 10:24:40    

Tout est dit dans le sujet.
Je cherche à afficher le tarif en francs (pas de pb)
Mais aussi en Euros par contre la je ne sais pas comment faire ?
En plus on m'a dit que PHP posait des problèmes pour les calculs...
 
@+

Reply

Marsh Posté le 10-04-2001 à 10:24:40   

Reply

Marsh Posté le 10-04-2001 à 10:49:37    

moi je l'ai fait en javascript, c'est super facil, mais je ne connais pas du tout le PHP. C'est quoi d'ailleurs, un equivalent de ASP.
 
prix_en_euros=prix_en_francs * 0,15244901723741037903399155737343
 
http://www.crdp.ac-grenoble.fr/imel/JLJ/euro/euro.htm
 
déolsé mais c'est tout ce que je peux faire ne connaissans pas php.

Reply

Marsh Posté le 10-04-2001 à 10:57:26    

Une petite précision réglementaire : ta formule n'est pas légale !!!
Les conversions doivent se faire à partir de 6,55957 F pour un Euro mais jamais avec l'inverse (c'est pas moi qui le dit c'est l'Europe)
 => prix_en_euros=prix_en_francs / 6,55957
La gestion des arrondis est également réglementée.
 
Celà n'a aucune importance bien sûr pour un calcul personnel, mais c'est fondamental pour un site commercial.
 
A+

Reply

Marsh Posté le 10-04-2001 à 11:14:34    

Php c'est dans le meme genre que ASP...
Sauf que Php est gratos ;))
 
JPA -> t'as Raison il faut bien diviser par 6.55957
 
Mais bon faut encore que je fasse des tests =)
Merci

Reply

Marsh Posté le 10-04-2001 à 13:08:27    

epo a écrit a écrit :

Php c'est dans le meme genre que ASP...
Sauf que Php est gratos ;))
 
JPA -> t'as Raison il faut bien diviser par 6.55957
 
Mais bon faut encore que je fasse des tests =)
Merci




Attention l'arrondi n'est pas l'arrondi bancaire...

Reply

Marsh Posté le 10-04-2001 à 13:57:26    

BENB -> Attention l'arrondi n'est pas l'arrondi bancaire...
 
Tu aurais une autre sol à me proposer pour arriver à un arrondi comme il faut avec juste 2 chiffres après la virgule ?

Reply

Marsh Posté le 10-04-2001 à 14:14:11    

Voilà le résultat d'une petite recherche (euro.gouv.fr)
 
2 - Opérations de conversion unitaire
 
A - Conversion unitaire simple (article 4.1 du règlement)
1 : euro en franc
 
Montant en euros x taux de conversion = montant en francs
Le résultat exact de la multiplication comporte 7 chiffres après la virgule.
 
Il sera fait appel à la règle d' arrondi suivante pour obtenir un montant exprimé avec deux chiffres après la virgule, c'est à dire :
 
si le troisième chiffre après la virgule est égal ou supérieur à 5, on arrondit au centime supérieur ;  
si le troisième chiffre après la virgule est inférieur à 5, on arrondit au centime inférieur.  
Exemples :
 
47,21 euros x 6,55957 = 309,6772997 F arrondi à 309,68 F  
47,22 euros x 6,55957 = 309,7428954 F arrondi à 309,74 F  
 
2 : franc en euro  
 
Montant en francs:taux de conversion = montant en euros
La même règle d' arrondi s'applique.
 
Exemple : 1.321,24 F : 6,55957 = 201,4217395 .... euros arrondi à 201,42 euros
 
Le règlement communautaire interdit l'usage du taux inverse ce qui oblige à effectuer une division au lieu d'une multiplication.
 
Commentaire :Dans le cas de conversion unitaire simple, la proposition de règlement est claire et suffisante.  
 
B - Conversion unitaire croisée (article 4.4 du règlement)
Il faut effectuer deux opérations consécutives puisqu'il n'y a plus de taux de change entre deux monnaies :
 
Montant en francs:taux de conversion euro -franc = montant intermédiaire en euros  
Montant intermédiaire en euros x taux de conversion euro -mark = montant en marks  
Ce montant intermédiaire doit être arrondi à au moins trois décimales.
Exemple :
 
montant de 1.321,24 F
 
montant intermédiaire en euros : 1.321,24:6,55957 = 201,4217395 arrondi à 201,421
 
montant en marks : 201,421x1,95583 = 393,9452344 arrondi à 393,95
 
Le règlement prévoit que toute autre méthode qui produit les mêmes résultats peut être utilisée.
 
Commentaire :Dans le cas de conversion unitaire croisée, la proposition de règlement est claire et suffisante.  
 
C - Conversion suivie d'une conversion inverse
1 : euro en franc puis en euro  
 
Premier cas, un montant exprimé à l'origine en euros est converti en francs puis reconverti en euros, le montant d'origine en euros est retrouvé.
 
Exemple :montant d'origine 204,36 euros
 
montant en francs 204,36 x 6,55957 = 1.340,5137252
 
montant en francs arrondi à 2 chiffres après la virgule 1.340,51
 
conversion inverse 1.340,51 : 6,55957 = 204,3594321
 
montant en euros arrondi à 2 chiffres après la virgule 204,36
2 : franc en euro puis en franc
 
Dans le deuxième cas où un montant exprimé à l'origine en francs est converti en euros puis reconverti en francs, il peut y avoir un écart entre le montant d'origine et le montant final qui peut aller de moins 3 à plus 3 centimes.
 
Exemple :montant d'origine 1.323,35 francs
 
montant en euros 1.323,35 : 6,55957 = 201,7434069
 
montant en euros arrondi 201,74
 
conversion inverse 201,74 x 6,55957 = 1.323,3276518
 
montant en francs arrondi 1.323,33
 
On constate un écart consécutif à une conversion franc/ euro /franc de 2 centimes
 
Selon les acteurs et les circonstances, le montant d'origine ou la différence d' arrondi seront connus alors que dans d'autres cas ils ne le seront pas.

Reply

Marsh Posté le 10-04-2001 à 14:30:50    

JPA a écrit a écrit :

Une petite précision réglementaire : ta formule n'est pas légale !!!
Les conversions doivent se faire à partir de 6,55957 F pour un Euro mais jamais avec l'inverse (c'est pas moi qui le dit c'est l'Europe)
 => prix_en_euros=prix_en_francs / 6,55957
La gestion des arrondis est également réglementée.
 
Celà n'a aucune importance bien sûr pour un calcul personnel, mais c'est fondamental pour un site commercial.
 
A+




 
oui mais le resultat obtenu est le meme et en plus c'etait une petite optimisation (la division est beaucoup plus longue que la division). Est ce que c'est tres utile d'optimiser comme ca ? ben je ne pense pas surtout si c'est illegal :gun:. En plus le gain n'est pas perceptible quelques ns (nano secondes) peut etre ?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed