imgEleveélément dont l'ID est700120formuleélément dont l'ID estfrac(-b+-sqrt(b^2-4ac))(2a)code mathboutonélément dont l'ID estdebut solutionvaleur_aélément dont l'ID estdebut solutionvaleur_bélément dont l'ID estdebut solutionvaleur_célément dont l'ID estdebut solutionvaleur_aélément dont l'ID est valeur_bélément dont l'ID est valeur_célément dont l'ID est ligne1élément dont l'ID estligne2élément dont l'ID estligne3élément dont l'ID estligne4élément dont l'ID estligne1 ligne2 ligne3 ligne4 Finaliser les expressions mathématiquesFixe le contenu deàFixe le contenu deàFixe le contenu deàFixe le contenu deàfixerligne4àfixerligne3àfixerligne2àfixerligne1àFixe la valeur deàFixe la valeur deàFixe la valeur deàsi on tape 'retour' dansfairesi on tape 'retour' dansfairesi on tape 'retour' dansfairesi clic surfaireFixe le contenu deàPlacer l'élémenten position absolue (,)pouractions initiales poursolutionavec : a, b, c, ligne1, ligne2, ligne3, ligne4b2^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<ligne2text(Pas de solution)code mathFixe le contenu deàd0=b-2a×÷ligne2text(Une solution)code mathligne3Solution =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×÷ligne2text(Deux solutions)code mathligne3Solution1 =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àFinaliser les expressions mathématiquessifairesifairesifaireFixe le contenu deàsifairesifairefixerdàpouractions en boucle valeur_aélément dont l'ID estvaleur devaleur_bélément dont l'ID estvaleur devaleur_célément dont l'ID estvaleur deacadreGGBabcadreGGBbccadreGGBca0=valeur_aélément dont l'ID est0Fixe la valeur deàb0=valeur_bélément dont l'ID est0Fixe la valeur deàc0=valeur_célément dont l'ID est0Fixe la valeur deàligne1 ligne2 ligne3 ligne4 abcligne1ligne2ligne3ligne4solutionavec :abcligne1ligne2ligne3ligne4Fixe le contenu deàFixe le contenu deàFixe le contenu deàFixe le contenu deàsifairesifairesifaireDonner à la variable GeoGebradu cadrela valeurDonner à la variable GeoGebradu cadrela valeurDonner à la variable GeoGebradu cadrela valeurfixercàfixerbàfixeraàpourdebut solution retour

var canvas, d, b, a, c, ligne1, ligne2, s1, ligne3, rd, s2, ligne4, commande, nomParametre, valeur, x;

/**
 * Fonction exécutée une fois, au départ
 */
function actions_initiales() {
  positionnerObjetPrudent("(select('#'+'imgEleve'))",(select('#'+'imgEleve')),700,120);
  fixeContenuPrudent("(select('#'+'formule'))",(select('#'+'formule')),(codeMath('frac(-b+-sqrt(b^2-4ac))(2a)')));
  siClicPrudent("(select('#'+'bouton'))",(select('#'+'bouton')),"debut_solution",debut_solution);
  siRetourPrudent("(select('#'+'valeur_a'))",(select('#'+'valeur_a')),"debut_solution",debut_solution);
  siRetourPrudent("(select('#'+'valeur_b'))",(select('#'+'valeur_b')),"debut_solution",debut_solution);
  siRetourPrudent("(select('#'+'valeur_c'))",(select('#'+'valeur_c')),"debut_solution",debut_solution);
  fixeValeurPrudent("(select('#'+'valeur_a'))",(select('#'+'valeur_a')),'');
  fixeValeurPrudent("(select('#'+'valeur_b'))",(select('#'+'valeur_b')),'');
  fixeValeurPrudent("(select('#'+'valeur_c'))",(select('#'+'valeur_c')),'');
  ligne1 = select('#'+'ligne1');
  ligne2 = select('#'+'ligne2');
  ligne3 = select('#'+'ligne3');
  ligne4 = select('#'+'ligne4');
  fixeContenuPrudent("ligne1",ligne1,'');
  fixeContenuPrudent("ligne2",ligne2,'');
  fixeContenuPrudent("ligne3",ligne3,'');
  fixeContenuPrudent("ligne4",ligne4,'');
  refreshMathJax();}

/**
 * Décrire cette fonction…
 */
function solution(a, b, c, ligne1, ligne2, ligne3, ligne4) {
  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,(codeMath('text(Pas de solution)')));
  }
  if (d == 0) {
    s1 = -b / (2 * a);
    fixeContenuPrudent("ligne2",ligne2,(codeMath('text(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,(codeMath('text(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])))));
  }
  refreshMathJax();}

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

/**
 * Décrire cette fonction…
 */
function debut_solution() {
  a = valeurPrudent("(select('#'+'valeur_a'))",(select('#'+'valeur_a')));
  b = valeurPrudent("(select('#'+'valeur_b'))",(select('#'+'valeur_b')));
  c = valeurPrudent("(select('#'+'valeur_c'))",(select('#'+'valeur_c')));
  fixerValeurVariableGeoGebraF('a',a,'cadreGGB');
  fixerValeurVariableGeoGebraF('b',b,'cadreGGB');
  fixerValeurVariableGeoGebraF('c',c,'cadreGGB');
  if (a == 0) {
    fixeValeurPrudent("(select('#'+'valeur_a'))",(select('#'+'valeur_a')),0);
  }
  if (b == 0) {
    fixeValeurPrudent("(select('#'+'valeur_b'))",(select('#'+'valeur_b')),0);
  }
  if (c == 0) {
    fixeValeurPrudent("(select('#'+'valeur_c'))",(select('#'+'valeur_c')),0);
  }
  fixeContenuPrudent("ligne1",ligne1,'');
  fixeContenuPrudent("ligne2",ligne2,'');
  fixeContenuPrudent("ligne3",ligne3,'');
  fixeContenuPrudent("ligne4",ligne4,'');
  solution(a, b, c, ligne1, ligne2, ligne3, ligne4);
}
Exécuter