Calcul complexe en fonction de 3 paramètres

Résolu
Bonjour,

Je viens vous voir car, j'aimerais bien faire un truc du genre :

(je nomme variable 1 = A, variable 2 = 2 et variable 3 = 3)

Sachant que variable 1 augmente de 1 donc au début elle vaut 1, ensuite 2, 3, 4...etc.
Sachant que variable 2 vaut toujours 2
Sachant que variable 3 vaut toujours 3

J'aimerais à partir de là, trouver une formule ou une boucle ou autre que le système calcul tous les résultats jusqu'à ce que variable 1 atteigne 100 (inclus).

Et ci-possible qu'il additionne en même temps tous les résultats

Merci pour votre aide.

3 réponses

  1. Bonjour,
    Si j'ai à peut près compris ? :
    $var2 = 2;
    $var3 = 3;
    $calcul = 0;
    $resultat_addition = 0;
    
    for ($var1 = 1; $var1 <= 100; $var1++) {
        
        $calcul = $var1 + $var2 * $var3;
        $resultat_addition +=  $calcul;
    }
    
    echo $resultat_addition;
    
    


    Have a nice day
    1. On a deux variables (var2 et var3) qui sont toujours les memes, et la variable $resultat_addition qui est au final égal à l’addition des 100 calcules comprenant $var1 qui est à chaque fois different.
      Je sais pas si c'est vraiment ca la question ^^
      (j'ai fait un calcul au pif biensur, ne sachant pas lequel il fallait)
    2. Oui car moi non plus je n'ai rien compris. Il n'y a qu'un seul paramètre puisque au final variable 2 et 3 ne changent jamais et sont toujours égal à 5, donc pourquoi deux variables 2 et 3 qui ne changent pas ? Donc il faudrait calculer Résultat = VAR1 + 5 pour VAR1 compris entre 0 et 100.
  2. Désolé, mon ordi à dû beugué car, le message n'est pas complet.

    Bon finalement, j'ai trouvé un petit moyen pour commencer :

    <?php
    echo 'Calcul total de l\'xp pour un pokemon au level 100';
    
    while ($NivPok <= 100)
    {
     $ExpMax = 1059860;
     $ChiffreFixe = 10000;
     $Gain1 = $ExpMax * $NivPok / $ChiffreFixe;
     $Expgain =  number_format($Gain1, 0, '.', '');
     ?>Gain pour le niveau <?php echo $NivPok; ?> : <?php echo $Expgain;?><br /><?php
     $res += $Expgain;
     ?>
     L'xp cumulé est <?php echo $res; ?>
     <?php
     $NivPok++;
    }
    ?>


    Donc ce code m'affiche un nombre pour chaque niveau (donc la variable qui change de 1 à 100)

    la variable $res m'affiche l'xp cumulé.

    Et moi, maintenant j'aimerais afficher directement la sommes des $Expgain qui est retourné.

    Avez-vous une idée ?
    1. Contributeur
      bonjour, si je comprends bien, ton code t'affiche, pour chaque niveau, le gain du niveau et le gain cumulé.
      est-ce bien ce qui se passe? les nombres sont-ils corrects?
      que souhaites-tu de différent?
      si jamais tu souhaites avoir uniquement le gain cumulé final:
      <?php
      echo 'Calcul total de l\'xp pour un pokemon au level 100';
      
       $ExpMax = 1059860;
       $ChiffreFixe = 10000;
      while ($NivPok <= 100)
      {
         $res += $ExpMax * $NivPok / $ChiffreFixe;
        $NivPok++;
      }
      ?>
      echo " L'xp cumulé est " . $res;
      ?>
    2. @yg_beJe pense qu'il serait préférable d'utiliser une boucle "for". Enfin même si ca marche bien là.
    3. Contributeur
      @spylllerj'aurais aussi fait avec for plutôt que while, cela me semble plus lisible.
      j'ai préféré changer le moins possible au code préparé par David987, pour que ce soit lisible pour lui.
  3. Bonjour,

    Tout d'abord, désolé du retard de réponse mais le boulot est énorme en ce moment donc pas trop le temps.

    Je vous remercie pour votre aide et finalement je me suis stoppé à mon code de base avec l'xp par niveau + cumulé ce qui me donnais bien mieux que ce que j’espérais.

    En tous cas, merci à vous.