Coverage Summary for Class: Diviseurs (io.github.lyes_sefiane)

Class Class, % Method, % Branch, % Line, %
Diviseurs 100% (1/1) 40% (2/5) 33.3% (4/12) 28.6% (6/21)


 package io.github.lyes_sefiane;
 
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
 
 /**
  * @course : IFT 1170 Java Programming and Applications
  * @university : University of Montreal
  * @teacher : Van Nguyen Le
  * @email : van.nguyen.le@umontreal.ca
  * @student : Sefiane, Lyes
  * @matricule : 20090833
  * @email : lyes.sefiane@umontreal.ca
  * @email : lyes.sefiane@gmail.com
  * @date : 2017-04-19
  */
 public class Diviseurs {
 
     private static final Logger logger = LogManager.getLogger(Diviseurs.class);
 
     static int nbDiv(int nombre) {
         int n = 0;
         for (int candidat = 1; candidat <= nombre; candidat++)
             if (nombre % candidat == 0)
                 n++;
         return n;
     }
 
     static void afficherDiviseurs(int nombre) {
         logger.info("Le nombre {} a {} diviseurs. Ce sont :", nombre, nbDiv(nombre));
         int rang = 0;
         for (int candi = 1; candi <= nombre; candi++)
             if (nombre % candi == 0) {
                 logger.info("{}) {}", ++rang, candi);
             }
     }
 
     public static void main(String[] args) {
 
         final int nombre1 = 720;
         final int nombre2 = 1000;
 
         int k = nbDiv(nombre1);
 
         logger.info("Le nombre de diviseurs de {} est {}", nombre1, k);
         logger.info("Le nombre de diviseurs de {} est {}", nombre2, Diviseurs.nbDiv(nombre2));
 
         // dĂ©couvrir un nombre entre 721 et 999 qui a plus de diviseurs que 720
         for (int nombre = nombre1 + 1; nombre < nombre2; nombre++)
             if (nbDiv(nombre) > k) {
                 logger.info("Le nombre {} a plus de diviseurs que {}", nombre, nombre1);
                 Diviseurs.afficherDiviseurs(nombre);
             }
     }
 }
 
 /* Compilation et ExĂ©cution:
 --------------------Configuration: <Default>--------------------
 Le nombre de diviseurs de 720 est 30
 Le nombre de diviseurs de 1000 est 16
 Le nombre 840 a plus de diviseurs que 720
 Le nombre 840 a 32 diviseurs. Ce sont :
   1)          1
   2)          2
   3)          3
   4)          4
   5)          5
   6)          6
   7)          7
   8)          8
   9)         10
  10)         12
  11)         14
  12)         15
  13)         20
  14)         21
  15)         24
  16)         28
  17)         30
  18)         35
  19)         40
  20)         42
  21)         56
  22)         60
  23)         70
  24)         84
  25)        105
  26)        120
  27)        140
  28)        168
  29)        210
  30)        280
  31)        420
  32)        840
 
 
 
 Process completed.
 
 
 */