Partage
  • Partager sur Facebook
  • Partager sur Twitter

Besoin d'un petit conseil

    7 décembre 2016 à 18:55:18

    Votre programme doit d'abord lire un entier, la population totale de la ville. Sachant qu'une personne était malade au jour 1 et que chaque malade contamine deux nouvelles personnes le jour suivant (et chacun des jours qui suivent), vous devez calculer à partir de quel jour toute la population de la ville sera malade.

    On a 1 malade le premier jour, donc 2 nouveaux malades le second jour, soit un total de 3 malades. On a donc 6 nouveaux malades au troisième jour, soit un total de 9 malades. On a donc 18 nouveaux malades au quatrième jour, soit…

    Voici mon code Java :

            int nbrPopulation = en.nextInt();
            int nbrJours = 0;
            int nbrMalades = 0;
            
             
            while (nbrMalades< nbrPopulation) {           
                 
            }
         
            System.out.println(nbrJours);


    Vue que :

    Jour 1 -> 1 malade

    Jour 2 -> 2 * 1 = 3 malade

    Jour 3 -> 2 * 3 = 6 + 3 = 9 malade

    Jour 4 -> 2 * 9 = 18 + 9 = 27 malade

    Jour 5 -> 2 * 27 = 54 + 27 = 81 malade

    Je ne sais toujours pas comment augmenter le nombre de personnes malade en codant. 

    • Partager sur Facebook
    • Partager sur Twitter
      7 décembre 2016 à 20:43:49

      Bonsoir,

      Petit précision, tu devrais commencés avec nbrJours et nbrMalades à 1 sinon tu risque d'avoir quelque petit problème. La difficulté de l'exercice est plus mathématique que programmation. Il s'agit tout simplement d'une suite mathématique, comme par exemple la suite de Fibonacci.

       Ton problème doit être une suite du genre : 2*x + x

      x est ici le nombre de malade.

      Pour l'affectation de valeur, c'est exactement comme tu a fait à la ligne 2 et 3.

      Exemple :

      int unNombre = 1;
      
      // changement de valeur
      unNombre = 2;
      
      // Un autre changement de valeur
      unNombre = 2 * unNombre;

      Il existe également des « sucre syntaxique », ce sont des « raccourcis » permettant de moins écrire pour faire des choses spécifiques tel que l'incrémentation de 1, la décrémentation, etc.

      Exemple :

      int nb = 1;
      
      nb++; // équivaut a nb = nb + 1
      nb--; // équivaut a nb = nb - 1
      
      nb += 3; // équivaut a nb = nb + 3
      // etc.




      -
      Edité par Heziode 7 décembre 2016 à 20:51:08

      • Partager sur Facebook
      • Partager sur Twitter
      Ensemble créons l'avenir !
        7 décembre 2016 à 22:56:33

        Merci beaucoup pour ton aide, je viens de résoudre le problème. 

        -
        Edité par aitelcadiali 8 décembre 2016 à 9:57:56

        • Partager sur Facebook
        • Partager sur Twitter

        Besoin d'un petit conseil

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown