Calcul en JS

Bonjour,

J'ai un code JS qui me permet de faire un calcul mais je n'arrive pas l'afficher. J'ai toujours NaN comme résultat.

Ce que je veux faire, si PartEntreprise est supérieur de la Limite, il faut faire le calcul sinon il m'affiche le résultat 0.

Je suis bloquée et depuis 3 jours, je n'arrive pas résoudre le problème.

Pouvez-vous m'aider svp?

Voici le code :

<script>
$(document).ready(function() {
$("#slider").slider({
animate: true,
value:50,
min: 50,
max: 60,
step: 1,
slide: function(event, ui) {
update(Taux,ui.value);
}
});

$("#slider2").slider({
animate: true,
value:7,
min: 3,
max: 12,
step: 1,
slide: function(event, ui) {
update(VF,ui.value);
}
});

$("#VF").val(7);
$("#Taux").val(50);

$("#Nbpersonne").val(1);
$("#NbTicket").val(20);

$("#Limite").val(5.33);
$("#LimLimite").val(10.66);

$("#PartEntreprise").val(3.5);

$("#ChEntreprise").val(0);

$("#VF-label").text(7);
$("#Taux-label").text(50);

$("#Nbpersonne-label").text(1);
$("#NbTicket-label").text(20);

$("#Limite-label").text(5.33);
$("#LimLimite-label").text(10.66);

$("#PartEntreprise-label").text(3.5);

$("#ChEntreprise-label").text(0);

update();
});

function update(slider,val) {

var $VF = slider == VF?val:$("#VF").val();
var $Taux = slider == Taux?val:$("#Taux").val();

var $Nbpersonne = slider == Nbpersonne?val:$("#Nbpersonne").val();
var $NbTicket = slider == NbTicket?val:$("#NbTicket").val();

var $Limite = slider == Limite?val:$("#Limite").val();
var $LimLimite = slider == LimLimite?val:$("#LimLimite").val();

var $PartEntreprise = slider == PartEntreprise?val:$("#PartEntreprise").val();

var $ChEntreprise = slider == ChEntreprise?val:$("#ChEntreprise").val();

$( "#VF" ).val($VF);
$( "#VF-label" ).text($VF);

$( "#Taux" ).val($Taux);
$( "#Taux-label" ).text($Taux);

$( "#Nbpersonne" ).val($Nbpersonne);
$( "#Nbpersonne-label" ).text($Nbpersonne);

$( "#NbTicket" ).val($NbTicket);
$( "#NbTicket-label" ).text($NbTicket);

$( "#BudgetEntreprise" ).val($BudgetEntreprise);
$( "#BudgetEntreprise-label" ).text($BudgetEntreprise);

$( "#Limite" ).val($Limite);
$( "#Limite-label" ).text($Limite);

$( "#LimLimite" ).val($LimLimite);
$( "#LimLimite-label" ).text($LimLimite);

$( "#PartEntreprise" ).val($PartEntreprise);
$( "#PartEntreprise-label" ).text($PartEntreprise);

$( "#ChEntreprise" ).val($ChEntreprise);
$( "#ChEntreprise-label" ).text($ChEntreprise);

$BudgetEntreprise = (($Nbpersonne * $NbTicket * $VF * $Taux) / 100) + " €" ;

$LimLimite = ($Limite * 100 ) / $Taux + " €" ;

$PartEntreprise = ($VF * $Taux ) / 100 + " €" ;

$ChEntreprise = ($PartEntreprise * $Limite ) * $Nbpersonne * $NbTicket + " €" ;

}
</script>

5 réponses

  1. Ce que je veux faire

    Si PartEntreprise > Limite
    $ChEntreprise = ($PartEntreprise * $Limite ) * $Nbpersonne * $NbTicket + " €" ;

    Si PartEntreprise < Limite
    Alors ChEntreprise =0
    1. Bonjour,

      Dans ta fonction, tu as notamment ce code :
      var $VF = slider == VF?val:$("#VF").val();
      var $Taux = slider == Taux?val:$("#Taux").val();
      
      var $Nbpersonne = slider == Nbpersonne?val:$("#Nbpersonne").val();
      var $NbTicket = slider == NbTicket?val:$("#NbTicket").val();
      
      var $Limite = slider == Limite?val:$("#Limite").val();
      var $LimLimite = slider == LimLimite?val:$("#LimLimite").val();
      
      
      var $PartEntreprise = slider == PartEntreprise?val:$("#PartEntreprise").val();
      
      var $ChEntreprise = slider == ChEntreprise?val:$("#ChEntreprise").val(); 


      Il me semble que les variables VF, Taux, Nbpersonne, NbTicket, PartEntreprise et ChEntreprise, que tu utilises dans tes affectations conditionnelles, ne sont pas définies.

      Xavier
      1. Merci pour ta réponse Reivax962,

        J'avais tout déclaré dans le code. Par exemple j'arrive à faire le calcul du BudgetEntreprise LimLimite et PartEntreprise mais pas ChEntreprise.

        Je voulais ajouter une condition pour ChEntreprise mais ça marche pas
        1. Si PartEntreprise > Limite
          $ChEntreprise = ($PartEntreprise * $Limite ) * $Nbpersonne * $NbTicket + " €" ;

          Si PartEntreprise < Limite
          Alors ChEntreprise =0
      2. Salut,

        certainement parce qu'il n'y a pas vraiment de question.

        Pour faire des calculs arithmétiques on utilise le symbole correspondant: " * / + - "

        Pour faire une condition on utilise la boucle conditionnelle "if"

        Le reste est trivial.

        Commencez par quelque chose de simple histoire de vous faire la main puis appliquez la même chose en utilisant vos calculs.

        Par exemple

        var a=10;
        var b=7;
        var condition=-1;

        if(condition<0){

        var total=a+b;
        }

        if(condition>0){

        var total=a-b;
        }

        alert(total);