login.php?sid=c76e435146a93249f778da29b089e863 profile.php?mode=register&sid=c76e435146a93249f778da29b089e863 faq.php?sid=c76e435146a93249f778da29b089e863 memberlist.php?sid=c76e435146a93249f778da29b089e863 search.php?sid=c76e435146a93249f778da29b089e863 index.php?sid=c76e435146a93249f778da29b089e863

passage à la caisse

 
Post new topic   Reply to topic     Forum Index -> Les CaRScripts
View previous topic :: View next topic  
Author Message
mohjer



Joined: 10 Jun 2009
Posts: 58
Location: Tunis

PostPosted: Wed Jan 11, 2012 10:28 am    Post subject: passage à la caisse Reply with quote

Bonjour,

je n'arrive pas à mettre cet algorithme sous carscript

Variables : le prix d'un article: x
La somme à payer: S
Initialisation
S prend la valeur 0
Saisir x
Traitement
Tantque x  0
Saisir x
S prend la valeur S+x
Fin Tantque
Sorties

j'ai fait ceci :
var a=Input("Entrez a");
s=0;
s=a;
while (a!=0){
s=s+a;
var a=Input("Entrez a");
}
Println("Somme à Payer est"+s);

malheureusement, ça ne marche pas
merci de m'aider.

Afficher( "le total est : ",S)
Back to top
View user's profile Send private message Send e-mail Visit poster's website
alain974



Joined: 13 Jun 2009
Posts: 150
Location: Réunion

PostPosted: Wed Jan 11, 2012 1:26 pm    Post subject: Reply with quote

1) Déjà, le

Code:

s=0;
s=a;


sonne faux, vu que si on met a dans s à la deuxième ligne, la première des deux devient inutile...

2) Ensuite, entre l'algorithme en pseudocode et la version JavaScript, il y a une interversion: la saisie de x (ou a) ne doit pas être faite au début mais dans la boucle while.

Ceci dit il est possible que le problème vienne du type de données (texte par défaut), et il est mieux de convertir le texte en nombre avec parseFloat():

En gardant les notations (S et x) de l'énoncé ça donne quelque chose comme

Code:

var x;
var S=0;
x=parseFloat(Input("Entrez le prix du premier article : "));
S=x;//sans doute un oubli
while (x!=0){
   x=parseFloat(Input("Entrez le prix de l'article suivant : "));
   S=S+x;
}
Alert("La somme des prix est "+S);


Enfin, la présentation en trois phases (initialisation-traitement-sortie) se prête assez bien à un raccourci avec la boucle for de JavaScript, les points-virgules séparant les trois phases en question. C'est un peu spécial mais ça donne

Code:

for(x=Input("premier"),S=parseFloat(x);x!=0;x=Input("suivant"),S=S+parseFloat(x));
Println(S);


Et après il y en a pour dire que Python est concis!
Back to top
View user's profile Send private message
mohjer



Joined: 10 Jun 2009
Posts: 58
Location: Tunis

PostPosted: Wed Jan 11, 2012 5:35 pm    Post subject: Reply with quote

Merci Alain de m'avoir éclairé, je n'y avais pas pensé à convertir le texte en nombre avec parseFloat().Encore merci.
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic     Forum Index -> Les CaRScripts All times are GMT
Page 1 of 1

 
  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You cannot download files in this forum


Powered by phpBB © 2001-2004 phpBB Group
phpBB Style by Vjacheslav Trushkin