Où est l'erreur?

Résolu
FishEyes -  
 FishEyes -
Bonsoir, Je suis actuellement un cours d'initiation à la programmation et je fais des exercices chez moi pour m'entraîner.

L'un de ces exercices me demande de créer un programme capable de calculer le montant à payer pour 1 ou plusieurs livres achetés dans une collection A, B ou C, en sachant que des remises de 5% sont accordées selon la quantité de livres achetés pour une collection. On suppose que dans une collection donnée, tous les livres ont le même prix.

Voici donc ce que j'obtiens :

<script langage="javascript">

var Collect;
var Quant;
var Prix;
var montant=Quant*Prix;

var Collect=parseInt(prompt("Quelle collection?"));
var Quant=parseInt(prompt("Encoder la quantité"));
var Prix=parseInt(prompt("Encoder le prix"));

switch(Collect)
{

case A:

if(Quant >=5)
{
montant=montant*0.95;
}break;

case B:

if(Quant >=3)
{
montant=montant*0.95;
}break;

case C:

if(Quant >=2)
{
montant=montant*0.95;
}break;

}

document.write(montant);


</script>

J'ai voulu utiliser la fonction switch.case, mais visiblement, ça ne fonctionne pas. Quelqu'un saurait-il m'expliquer pourquoi, s'il vous plait? Merci d'avance!


1 réponse

KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Je dirais que tes cases devraient plutôt être
case 'A' :
avec des apostrophes pour marquer la valeur.
0
FishEyes
 
Merci pour ta réponse, c'est déjà mieux dans le sens ou il m'affiche désormais NaN, alors qu'avant il ne m'affichait rien d'autre. Maintenant reste à comprendre pourquoi il m'affiche NaN ...
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
NaN ça veut dire Not a Number. Le problème c'est que tu calcules "montant" avant d'avoir saisi les valeurs Quant et Prix...
0
FishEyes
 
Je te remercie, ça fonctionne enfin ! Il semblerait que Javascript ne soit pas si permissif que je le pensais :-)
0