exercices/can/5e/can5C16.js

import Exercice from '../../Exercice.js'
import { randint, texNombrec, choice, calcul } from '../../../modules/outils.js'
export const titre = 'Calculer astucieusement avec une factorisation'
export const interactifReady = true
export const interactifType = 'mathLive'

/**
 * Modèle d'exercice très simple pour la course aux nombres
 * @author Gilles Mora
 * Référence can5C17
 * Date de publication 18/10/2021
*/
export const uuid = '7d21c'
export const ref = 'can5C16'
export default function CalculAstucieuxAvecFactorisation () {
  Exercice.call(this) // Héritage de la classe Exercice()
  this.typeExercice = 'simple' // Cette ligne est très importante pour faire faire un exercice simple !
  this.nbQuestions = 1
  this.tailleDiaporama = 2
  // Dans un exercice simple, ne pas mettre de this.listeQuestions = [] ni de this.consigne
  this.formatChampTexte = 'largeur15 inline'
  this.nouvelleVersion = function () {
    let a, b, c, d
    switch (choice(['a', 'b', 'c', 'c', 'd', 'e'])) { //
      case 'a':

        a = randint(5, 99) / 10
        b = calcul(randint(2, 9) * 5)
        c = 100 - b
        this.question = `Calculer $${b}\\times${texNombrec(a)} + ${texNombrec(a)}\\times${c}$. 
`
        this.correction = `On remarque de part et d'autre  du signe "$+$" un facteur commun : $${texNombrec(a)}$.<br>
En factorisant par ce nombre, on obtient : <br>
$\\begin{aligned}
${texNombrec(b)}\\times${texNombrec(a)} + ${texNombrec(a)}\\times${c}&=${texNombrec(a)}\\underbrace{(${texNombrec(b)}+${texNombrec(c)})}_{=100}\\\\
&=${texNombrec(a)}\\times 100\\\\
&=${texNombrec(100 * a)}
\\end{aligned}$`
        this.reponse = 100 * a
        break

      case 'b':
        a = randint(5, 99) / 100
        b = randint(2, 8)
        c = 10 - b
        this.question = `Calculer $ ${b}\\times${texNombrec(a)}+ ${c}\\times${texNombrec(a)}$. 
`
        this.correction = `On remarque de part et d'autre  du signe "$+$" un facteur commun : $${texNombrec(a)}$.<br>
        En factorisant par ce nombre, on obtient : <br>
        $\\begin{aligned}
        ${texNombrec(b)}\\times${texNombrec(a)} + ${texNombrec(c)}\\times${texNombrec(a)}&=${texNombrec(a)}\\underbrace{(${texNombrec(b)}+${texNombrec(c)})}_{=10}\\\\
        &=${texNombrec(a)}\\times 10\\\\
        &=${texNombrec(10 * a)}
        \\end{aligned}$`
        this.reponse = 10 * a
        break

      case 'c':
        a = randint(5, 99, [10, 20, 30, 40, 50, 60, 70, 80, 90]) / 10
        b = randint(2, 8) / 10
        d = randint(1, 2)
        c = d - b
        this.question = `Calculer $ ${texNombrec(b)}\\times${texNombrec(a)}+ ${texNombrec(c)}\\times${texNombrec(a)}$. 
`
        this.correction = `On remarque de part et d'autre  du signe "$+$" un facteur commun : $${texNombrec(a)}$.<br>
        En factorisant par ce nombre, on obtient : <br>
$\\begin{aligned}
${texNombrec(a)}\\times ${texNombrec(b)}+${texNombrec(a)}\\times ${texNombrec(c)}&=${texNombrec(a)}\\underbrace{(${texNombrec(b)}+${texNombrec(c)})}_{=${d}}\\\\
&=${texNombrec(a)}\\times ${d}\\\\
&=${texNombrec(d * a)}
\\end{aligned}$`
        this.reponse = d * a
        break
      case 'd':
        a = calcul(randint(5, 99) / 100)
        b = calcul(randint(2, 99) / 10)
        c = 10 - b
        this.question = `Calculer $ ${texNombrec(b)}\\times${texNombrec(a)}+ ${texNombrec(c)}\\times${texNombrec(a)}$. 
    `
        this.correction = `On remarque de part et d'autre  du signe "$+$" un facteur commun : $${texNombrec(a)}$.<br>
            En factorisant par ce nombre, on obtient : <br>
            $\\begin{aligned}
            ${texNombrec(b)}\\times${texNombrec(a)} + ${texNombrec(c)}\\times${texNombrec(a)}&=${texNombrec(a)}\\underbrace{(${texNombrec(b)}+${texNombrec(c)})}_{=10}\\\\
            &=${texNombrec(a)}\\times 10\\\\
            &=${texNombrec(10 * a)}
            \\end{aligned}$`
        this.reponse = 10 * a
        break
      case 'e':
        a = calcul(randint(1, 12) * 10)
        b = calcul(randint(2, 9) / 10)
        c = 5 - b
        this.question = `Calculer $ ${texNombrec(a)}\\times${texNombrec(b)}+ ${texNombrec(c)}\\times${texNombrec(a)}$. 
    `
        this.correction = `On remarque de part et d'autre  du signe "$+$" un facteur commun : $${texNombrec(a)}$.<br>
            En factorisant par ce nombre, on obtient : <br>
            $\\begin{aligned}
            ${texNombrec(a)}\\times${texNombrec(b)}+ ${texNombrec(c)}\\times${texNombrec(a)}&=${texNombrec(a)}\\underbrace{(${texNombrec(b)}+${texNombrec(c)})}_{=5}\\\\
            &=${texNombrec(a)}\\times 5\\\\
            &=${texNombrec(5 * a)}
            \\end{aligned}$`
        this.reponse = 5 * a
        break
    }
    this.canEnonce = this.question// 'Compléter'
    this.canReponseACompleter = ''
  }
}