40Factorisation premièrecréer une liste avecNombrecréer une liste avecFactorisationcréer une liste avec créer une liste avec 210001inombres formatNombresnfactoriseravec :icode mathfactorisationssifairesinonnEstPremiercolor:rgb(255,255,255);background:rgb(255,0,0)formatFactorisationsEmpiler la valeurdans la liste formatFactorisationsEmpiler la valeurdans la listeEmpiler la valeurdans la listeEmpiler la valeurdans la listeEmpiler la valeurdans la listetableaucréer une liste avecnombresfactorisations30070024créer une liste avecnombresfactorisationscréer une liste avecformatNombresformatFactorisationstableauFinaliser les expressions mathématiquesAfficher plusieurs listesavec formatdans le tableauCréer un tableaupour afficher plusieurs listesavec largeurpixelshauteuractivéeet taille de policeboucleide minà maxavec pasfairefixerformatFactorisationsàfixerformatNombresàfixerfactorisationsàfixernombresàCréer un titrecontenantMarge gauchepixelspouractions initiales pouractions en boucle pour factoriser avec : n fi...


var etapeFacto, facto, p, np, mult, n, nombres, factorisations, i, canevas, formatNombres, formatFactorisations, tableau, text, nEstPremier;

/**
 * Décrire cette fonction…
 */
function actions_initiales() {
  document.body.style.paddingLeft="40px";
  createElement("h1",'Factorisation première');
  nombres = ['Nombre'];
  factorisations = ['Factorisation'];
  formatNombres = [''];
  formatFactorisations = [''];
  for (i = 2; i <= 1000; i += abs(1)) {
    nombres.push(i);
    formatNombres.push('');
    factorisations.push((codeMath((factoriser(i)))));
    if (nEstPremier) {
      formatFactorisations.push('color:rgb(255,255,255);background:rgb(255,0,0)');
    } else {
      formatFactorisations.push('');
    }
  }
  tableau=creerAffichageListes([nombres, factorisations],300,"PIXELS","ACTIVEE",700,24);
  afficherListesFormat([nombres, factorisations],[formatNombres, formatFactorisations],tableau);
  refreshMathJax();}

/**
 * Décrire cette fonction…
 */
function actions_en_boucle() {
}

/**
 * Décrire cette fonction…
 */
function factoriser(n) {
  nEstPremier = true;
  etapeFacto = 0;
  facto = '';
  p = 2;
  np = 0;
  mult = '';
  while (n > 1) {
    if (n % p == 0) {
      while (n % p == 0) {
        np = np + 1;
        n = n / p;
      }
      if (np == 1) {
        facto = [facto,mult,p].join('');
        if (n != 1) {
          nEstPremier = false;
        }
      } else {
        facto = [facto,mult,p,'^(',np,')'].join('');
        nEstPremier = false;
      }
      mult = '×';
    }
    p = p + 1;
    np = 0;
  }
  return facto;
}
Exécuter