Partage
  • Partager sur Facebook
  • Partager sur Twitter

Suites mathématiques

P = 30 * n * 1,1^n

Sujet résolu
    11 juin 2011 à 13:44:53

    Bonjour :)
    Cette année on à vu les suites dans le cours de maths.

    Mais bon, ça n'a rien à voir avec mon cours :p Je veux faire un programme pour calculer des choses dans un jeux
    (C'est plus pour m'exercer en programmation que pour m'aider dans le jeux, mais bon :lol: )

    donc dans le jeux on à une Production (P) et des niveau (n)

    Et ça c'est la formules:
    <math>\(P = 30 * n * 1,1^n\)</math>
    Jusque là ça va pas de problème. Mais il faudrait que je sois capable de donner le niveau en recevant la production.
    Je suis arrivé jusque là:
    <math>\(P/30 = n * 1,1^n\)</math>
    Et la je bloque avec l'exposant n

    Je ne demande pas la solution ;) mais juste la méthode pour résoudre :)

    Merci beaucoup
    • Partager sur Facebook
    • Partager sur Twitter
      11 juin 2011 à 13:46:44

      Salut,

      tu connais peut être les fonctions ln et exponentielle ? Si oui, cherche par là, à première vu c'est peut être envisageable.
      • Partager sur Facebook
      • Partager sur Twitter
        11 juin 2011 à 13:54:46

        Tu veux dire pour mon programme?

        Je crois qu'il serait d'abord préférable que je puisse à nouveau les solutionner sur papier avant de les intégrer dans mon code ;) j'aime pas travailler avec ce que je ne comprends pas :-°

        En faite mon problème est: Je ne me souviens plus comment faire pour enlever l'exposant pour au final obtenir

        <math>\(n = x\)</math> x étant le nombre qu'on obtient (le niveau)
        • Partager sur Facebook
        • Partager sur Twitter
          11 juin 2011 à 14:17:12

          Ce type d'équation ne peut pas être résolu de manière algébrique avec les fonctions usuelles (même log et exponentielle).

          Une méthode dichotomique (cf wiki ou google) peut te permettre de trouver n très rapidement.

          Edit : n*x^n=a est insolvable mais x^n=a est très simple à résoudre, justement avec le logarithme.
          • Partager sur Facebook
          • Partager sur Twitter
            11 juin 2011 à 14:44:07

            insolvable?
            Tu es sur? ça me parait bizarre

            Je crois me souvenir que dans mon cours on avait vu un truc du genre:

            <math>\(t_n = t_1 * q^{n-1}\)</math>
            Je crois me rappeler d'une formule:
            <math>\(D = b^2 + 4 * a * b\)</math>
            Je sais qu'on la utilisé à un moment mais je sais plus si c'était pour ça, et je ne sais plus trop comment

            EDIT:

            Citation : sebsheep

            n*x^n=a est insolvable mais x^n=a est très simple à résoudre, justement avec le logarithme.



            Je me suis trompé alors? Je confond les 2 :euh:
            • Partager sur Facebook
            • Partager sur Twitter
              11 juin 2011 à 15:42:40

              Le <math>\(b^2-4ac\)</math> c'est pour résoudre <math>\(ax^2+bx+c = 0\)</math> (et les solutions sont <math>\(\frac{-b\pm\sqrt{b^2-4ac}}{2a}\)</math> )

              On peut facilement résoudre <math>\(a = b^x\)</math> en utilisant le fait que <math>\(\ln(c^d) = d*\ln(c)\)</math> et on trouve donc <math>\(x = \frac{\ln(a)}{\ln(b)}\)</math>

              Par contre avec <math>\(P = n*q^n\)</math> , passer au logarithme permet juste d'arriver à : <math>\(\ln(P) = \ln(n) + n\ln(q)\)</math> et on est pas plus avancé.

              Par contre, le problème revient à résoudre <math>\(30*n*1,1^n - P = 0\)</math> ce qui, numériquement, se fait très bien en utilisant des méthodes type Newton ou dichotomie.

              Une autre solution (un peu extrême) serait de stocker les valeurs de P pour les 200 premières valeurs de n (au hasard, mais je suppose qu'il y a un niveau maximum ^^) et de faire l'association inverse dans le programme :p
              • Partager sur Facebook
              • Partager sur Twitter
                11 juin 2011 à 16:19:00

                Merci :)
                En effet j'ai confondu

                Par contre je suis sur que j'ai utilisé la formule <math>\(b^2 + 4*a*b\)</math> dans ce chapitre sur les suites. Enfin bref :p
                Non, il n'y à pas de niveau maximum. Enfin pas connu :p
                Mais le coût des niveau augmente exponentiellement aussi. Donc après un certain niveau ça deviens très compliqué.

                Je crois que le record de niveau est de 42 ou quelque chose comme ça :-°

                Mais merci pour les réponses ^^
                • Partager sur Facebook
                • Partager sur Twitter
                  11 juin 2011 à 18:18:49

                  On peut éventuellement devoir utiliser <math>\(b^2-4ac\)</math> dans le cas des suites récurrentes d'ordre 2, c'est-à-dire vérifiant une relation du type :
                  <math>\(a\times U_{n+2}+b\times U_{n+1}+c\times U_n = 0\)</math>
                  On recherche des solutions sous la forme <math>\(U_n = r^n\)</math> (avec <math>\(r\neq 0\)</math>)
                  Ce qui après injection dans la relation et simplification par <math>\(r^n\)</math> donne :
                  <math>\(ar^2+br+c=0\)</math>
                  Soit une équation du second degré et donc la nécessité de faire intervenir le discriminant.
                  Mais à part ça, j'ai un peu de mal à voir où ça pourrait intervenir dans l'étude des suites (même si je ne prétends pas tout connaitre des suites, loin de là).
                  • Partager sur Facebook
                  • Partager sur Twitter
                    11 juin 2011 à 18:48:10

                    J'ai pas mes cours maintenant :p mais la semaine prochaine j'ai examen ;)
                    Si je me trompe ou que je le retrouve je le poste ^^
                    • Partager sur Facebook
                    • Partager sur Twitter
                      11 juin 2011 à 18:51:30

                      Juste un point de culture mathématique (qui ne t'aidera pas a résoudre ton problème) :

                      La solution exacte de l'équation n*a^n = b est

                      <math>\(n = \frac{W(b\ln(a))}{\ln(a)}\)</math>

                      Ou la fonction W est la fonction W de lambert:
                      http://fr.wikipedia.org/wiki/Fonction_W_de_Lambert

                      Bien-sur, si on a défini une fonction comme celle ci, c'est qu'elle n'est pas exprimable avec un nombre fini de fonctions usuelles :)

                      Sinon, d'un point de vu pratique, et comme cela a déjà été évoqué, si n est entier, un simple tableau d'inversion suffit. Vu que ton record actuel est au niveau 42, tu calcules les 100 premiers termes, cela devrait suffire. Et non, ça n'est pas une méthode extrême, la fonction étant très simple a calculer (même avec la méthode naïve, Ça ne fait que n(n-1)/2 opérations élémentaires pour calculer les n premiers termes)
                      • Partager sur Facebook
                      • Partager sur Twitter
                        11 juin 2011 à 19:18:38

                        Je ne voulais pas dire extrême en terme de temps de calcul (surtout que le calcul n'est à faire qu'une seul fois, pas a chaque fois que l'on veut trouver n), mais dans le sens où c'est une solution un peu à la limite de ce qu'il demandait.
                        • Partager sur Facebook
                        • Partager sur Twitter
                          18 juin 2011 à 9:58:56

                          C'est vrai que ça marche :p et c'est même plus simple, mais ce n'est pas la solution à la qu'elle je m'attendais :-°

                          Mais au moins je le serais pour la prochaine fois ^^

                          Merci beaucoup en tout cas :)
                          • Partager sur Facebook
                          • Partager sur Twitter
                            31 juillet 2011 à 22:43:01

                            Tu peux utiliser Worlfram Alpha, ou un autre logiciel de calcul formel qui connait la fonction W de Lambert :
                            Tu as juste à remplacer <math>\(b\)</math> par ta valeur
                            Exemple avec <math>\(1.1\)</math> (<math>\(n=1\)</math>) pour vérifier que ça marche.

                            Edit : désolé de déterrer ce sujet, mais je me suis emmêlé les pinceaux avec un nouveau sujet en relation avec celui-ci, cela dit, ça peut aussi aidé ici ...
                            • Partager sur Facebook
                            • Partager sur Twitter

                            Suites mathématiques

                            × 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