20Trouver les solutions de l'équationequationtext(          )ax^2+bx+c=0code mathLa formule utiliséeformuletext(          )frac(-b+-sqrt(b^2-4ac))(2a)code mathboutonTrouver les solutionsboutonpre_solutionvaleur_a valeur_b valeur_c ligne1 ligne2 ligne3 ligne4 Finaliser les expressions mathématiquesCréer un paragraphecontenantCréer un paragraphecontenantCréer un paragraphecontenantCréer un paragraphecontenantCréer un paragraphecontenantCréer un paragraphecontenantCréer un paragraphecontenantsi clic surfaireCréer un boutonaffichantCréer un paragraphecontenantCréer un paragraphecontenantCréer un paragraphecontenantCréer un paragraphecontenantMarge gauchepixels'actions en boucle' appelée une seule foispouractions initiales pour actions en boucle  ?pourcoeurSolutionavec : a, b, cb2^4ac××-dest un nombre ?pasligne1<b>Attention :</b> les valeurs de <i>a</i>, <i>b…quitter la fonction (en retournant)Fixe le contenu deàa0=ligne1<b>Attention :</b> la valeur de <i>a</i> doit êt…quitter la fonction (en retournant)Fixe le contenu deàligne1"discriminant" =b^2-4ac=(@2)^2-4(@1)(@3)~~@4créer une liste avecabcdsubstituer dansles valeurscode mathd0<ligne2Pas de solutionFixe le contenu deàd0=b-2a×÷ligne2Une solutionligne3Solution =frac(-b)(2a)=frac(-(@2))(2(@1))~~@3créer une liste avecabs1substituer dansles valeurscode mathFixe le contenu deàFixe le contenu deàfixers1àd0>dracine carréeb-rd+2a×÷b-rd-2a×÷ligne2Deux solutionsligne3Solution1 =frac(-b+sqrt(b^2-4ac))(2a)=frac(-(@2)…créer une liste avecabcs1substituer dansles valeurscode mathligne4Solution2 =frac(-b-sqrt(b^2-4ac))(2a)=frac(-(@2)…créer une liste avecabcs2substituer dansles valeurscode mathFixe le contenu deàFixe le contenu deàFixe le contenu deàfixers2àfixers1àfixerrdàsifairesifairesifaireFixe le contenu deàsifairesifairefixerdàtextefiltreavec :invite pour untexteavec un messageValeur de a : textefiltreavec :invite pour untexteavec un messageValeur de b : textefiltreavec :invite pour untexteavec un messageValeur de c : valeur_acréer un texte avec a = avaleur_bcréer un texte avec b = bvaleur_ccréer un texte avec c = ca0=valeur_a0Fixe la valeur deàb0=valeur_b0Fixe la valeur deàc0=valeur_c0Fixe la valeur deàligne1 ligne2 ligne3 ligne4 abccoeurSolutionavec :abcFinaliser les expressions mathématiquesFixe le contenu deàFixe le contenu deàFixe le contenu deàFixe le contenu deàsifairesifairesifaireFixe le contenu deàFixe le contenu deàFixe le contenu deàfixercàfixerbàfixeraàpoursolution retourpourfiltreavec : texteretoursifairesinontextelongueur de =0quitter la fonction (en retournant)textequitter la fonction (en retournant)valeur_a valeur_b valeur_c ligne1 ligne2 ligne3 ligne4 solution0.1FairedanssecondesFixe le contenu deàFixe le contenu deàFixe le contenu deàFixe le contenu deàFixe le contenu deàFixe le contenu deàFixe le contenu deàpourpre_solution retour

var canvas, d, b, a, c, ligne1, ligne2, s1, ligne3, rd, s2, ligne4, commande, nomParametre, valeur, x, formule, equation, bouton, valeur_a, valeur_b, valeur_c, texte;

/**
 * Fonction exécutée une fois, au départ
 */
function actions_initiales() {
  noLoop();
  document.body.style.paddingLeft="20px";
  createP('Trouver les solutions de l\'équation');
  equation=createP((codeMath('text(          )ax^2+bx+c=0')));
  createP('La formule utilisée');
  formule=createP((codeMath('text(          )frac(-b+-sqrt(b^2-4ac))(2a)')));
  bouton=createButton('Trouver les solutions');
  siClicPrudent("bouton",bouton,"pre_solution",pre_solution);
  valeur_a=createP('');
  valeur_b=createP('');
  valeur_c=createP('');
  ligne1=createP('');
  ligne2=createP('');
  ligne3=createP('');
  ligne4=createP('');
  refreshMathJax();}

/**
 * Fonction exécutée périodiquement, de façon répétée
 */
function actions_en_boucle() {
}

/**
 * Décrire cette fonction…
 */
function coeurSolution(a, b, c) {
  d = Math.pow(b, 2) - 4 * a * c;
  if (!estNombre(d)) {
    fixeContenuPrudent("ligne1",ligne1,'<b>Attention :</b> les valeurs de <i>a</i>, <i>b</i> et <i>c</i> doivent être <i>des nombres</i>.');
    return ;
  }
  if (a == 0) {
    fixeContenuPrudent("ligne1",ligne1,'<b>Attention :</b> la valeur de <i>a</i> doit être <i>non nulle</i>.');
    return ;
  }
  fixeContenuPrudent("ligne1",ligne1,(codeMath((substitution('"discriminant" =b^2-4ac=(@2)^2-4(@1)(@3)~~@4',[a, b, c, d])))));
  if (d < 0) {
    fixeContenuPrudent("ligne2",ligne2,'Pas de solution');
  }
  if (d == 0) {
    s1 = -b / (2 * a);
    fixeContenuPrudent("ligne2",ligne2,'Une solution');
    fixeContenuPrudent("ligne3",ligne3,(codeMath((substitution('Solution =frac(-b)(2a)=frac(-(@2))(2(@1))~~@3',[a, b, s1])))));
  }
  if (d > 0) {
    rd = Math.sqrt(d);
    s1 = (-b + rd) / (2 * a);
    s2 = (-b - rd) / (2 * a);
    fixeContenuPrudent("ligne2",ligne2,'Deux solutions');
    fixeContenuPrudent("ligne3",ligne3,(codeMath((substitution('Solution1 =frac(-b+sqrt(b^2-4ac))(2a)=frac(-(@2)+sqrt((@2)^2-4(@1)(@3)))(2(@1))~~ @4',[a, b, c, s1])))));
    fixeContenuPrudent("ligne4",ligne4,(codeMath((substitution('Solution2 =frac(-b-sqrt(b^2-4ac))(2a)=frac(-(@2)-sqrt((@2)^2-4(@1)(@3)))(2(@1))~~@4 ',[a, b, c, s2])))));
  }
}

/**
 * Décrire cette fonction…
 */
function solution() {
  a = filtre(window.prompt('Valeur de a : '));
  b = filtre(window.prompt('Valeur de b : '));
  c = filtre(window.prompt('Valeur de c : '));
  fixeContenuPrudent("valeur_a",valeur_a,(String(' a = ') + String(a)));
  fixeContenuPrudent("valeur_b",valeur_b,(String(' b = ') + String(b)));
  fixeContenuPrudent("valeur_c",valeur_c,(String(' c = ') + String(c)));
  if (a == 0) {
    fixeValeurPrudent("valeur_a",valeur_a,0);
  }
  if (b == 0) {
    fixeValeurPrudent("valeur_b",valeur_b,0);
  }
  if (c == 0) {
    fixeValeurPrudent("valeur_c",valeur_c,0);
  }
  fixeContenuPrudent("ligne1",ligne1,'');
  fixeContenuPrudent("ligne2",ligne2,'');
  fixeContenuPrudent("ligne3",ligne3,'');
  fixeContenuPrudent("ligne4",ligne4,'');
  coeurSolution(a, b, c);
  refreshMathJax();}

/**
 * Décrire cette fonction…
 */
function filtre(texte) {
  if (texte.length == '') {
    return '0';
  } else {
    return texte;
  }
}

/**
 * Décrire cette fonction…
 */
function pre_solution() {
  fixeContenuPrudent("valeur_a",valeur_a,'');
  fixeContenuPrudent("valeur_b",valeur_b,'');
  fixeContenuPrudent("valeur_c",valeur_c,'');
  fixeContenuPrudent("ligne1",ligne1,'');
  fixeContenuPrudent("ligne2",ligne2,'');
  fixeContenuPrudent("ligne3",ligne3,'');
  fixeContenuPrudent("ligne4",ligne4,'');
  faireDelaiPrudent("solution",solution,0.1);
}
Exécuter