JS - ax²+bx+c=0 - Squelette du script
by M.V. 414
HTML
<script src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({ tex2jax: {inlineMath: [['$','$'], ['\\(','\\)']]} });
</script>
<h2>Résolution de l'équation $ax^2+bx+c=0$</h2>
<label for="a">a=</label><input type="text" id="input_a" value="1" size='6'>
<label for="b">b=</label><input type="text" id="input_b" value="2" size='6'>
<label for="c">c=</label><input type="text" id="input_c" value="3" size='6'>
<p>Le discriminant vaut <span id="span_delta"></span></p>
<p>Il y a <span id="span_nbsolutions"></span> solution<span id="pluriel"></span> <span id="solreelle"></span></p>
<span id="span_solutions"></span>
CSS
input[type='text']{ text-align:center; }
JavaScript
/* =========================
DEFINITION DES FONCTIONS
========================= */
// Fonction "CalculerSolutions" qui va calculer les solutions et les mettre dans une liste
var CalculerSolutions = function(a,b,c) {
var solutions = []; // une liste (vide au départ) qui devra contenir en sortie de fonction :
// [delta,0] ou [delta,1,x0] ou [delta,2,x1,x2]
var delta = Math.pow(b,2)-4*a*c; // Calcul de delta
solutions.push(delta); // Ajout de delta à la liste
if (delta < 0) {
solutions.push(0); // Ajout du nombre de solutions à la liste
} else if(delta === 0) {
solutions.push(1); // Ajout du nombre de solutions à la liste
var x0 = -b/(2*a); // Calcul de la solution
solutions.push(x0); // Ajout de la solution à la liste
} else if(delta > 0) {
solutions.push(2); // Ajout du nombre de solutions à la liste
var x1 = (-b-Math.sqrt(delta))/(2*a); // Calcul des solutions
var x2 = (-b+Math.sqrt(delta))/(2*a);
solutions.push(x1); // Ajout des solutions à la liste
solutions.push(x2);
}
return solutions; // Sortie de fonction: affichage des résultats
}
// Fonction "AfficherSolutions" qui va :
// 1. récupérer les valeurs a, b, c du formulaire ;
// 2. utiliser la fonction CalculerSolutions pour le calcul de delta et des solutions
// 3. afficher delta et les solutions.
var AfficherSolutions = function() {
var va = $("#input_a").val(); // Récupération des valeurs input
var vb = $("#input_b").val();
var vc = $("#input_c").val();
var listeSolutions = CalculerSolutions(va,vb,vc); // Calcul des valeurs et stockage dans la liste listeSolutions
$("#span_delta").text(listeSolutions[0]); // Affichage du delta
$("#span_nbsolutions").text(listeSolutions[1]); // Affichage du nombre de solutions
if(listeSolutions[1] > 1) {
$("#pluriel").text("s");
} // Ajout d'un "s" à "solution" si 2 résultats
if(listeSolutions[1] === 0) {
...