Besoin d'aide en programmation avec python

Abricotdu38
2021-11-11 16:31:57

Salut les kheys j'ai un tp à rendre pour demain en info mais je bloque sur une question qui est :
A l'aide d'un script Python, déterminer la plus petite valeur de 𝑛 qui garantit que 3/(𝑛+1)!<10**−101 .
Comment je code une solution pour ca svp ?

Abricotdu38
2021-11-11 16:33:42

up

Abricotdu38
2021-11-11 16:33:58

up

Abricotdu38
2021-11-11 16:35:18

up

Alphaceph_
2021-11-11 16:35:33

tant que 3/(𝑛+1)!>10**−101 faire n + 1

Abricotdu38
2021-11-11 16:37:07

Le 11 novembre 2021 à 16:35:33 :
tant que 3/(𝑛+1)!>10**−101 faire n + 1

de quoi n+1 cest quelle valeur que jajoute n+1

Azerban
2021-11-11 16:37:38

Le point d'exclamation c'est pour la factorielle ? Ou tu t'es trompé en postant l'énoncé ?

Azerban
2021-11-11 16:38:53

Éventuellement poste l'énoncé exact.

Ligne8
2021-11-11 16:39:43

Tu fais un while en incrémentant n++ et la condition de sortie c'est quand ton truc est inférieur à ton résultat.

Après je sais pas comment on manipule des grands nombres en python, je sais qu'en Java il y a les BigInteger ou les BigFloat mais je sais pas trop sur ce langage :(

Ligne8
2021-11-11 16:41:07

Le 11 novembre 2021 à 16:37:07 :

Le 11 novembre 2021 à 16:35:33 :
tant que 3/(𝑛+1)!>10**−101 faire n + 1

de quoi n+1 cest quelle valeur que jajoute n+1

Bah à n

Si tu veux tu fais n = n + 1 à chaque itération de ta boucle while

Azerban
2021-11-11 16:41:10

Le 11 novembre 2021 à 16:39:43 :
Tu fais un while en incrémentant n++ et la condition de sortie c'est quand ton truc est inférieur à ton résultat.

Après je sais pas comment on manipule des grands nombres en python, je sais qu'en Java il y a les BigInteger ou les BigFloat mais je sais pas trop sur ce langage :(

Python est un langage dynamique, pas besoin de typer les variables :ok:

Ligne8
2021-11-11 16:42:35

Le 11 novembre 2021 à 16:41:10 :

Le 11 novembre 2021 à 16:39:43 :
Tu fais un while en incrémentant n++ et la condition de sortie c'est quand ton truc est inférieur à ton résultat.

Après je sais pas comment on manipule des grands nombres en python, je sais qu'en Java il y a les BigInteger ou les BigFloat mais je sais pas trop sur ce langage :(

Python est un langage dynamique, pas besoin de typer les variables :ok:

Mais il accepte 10^(-101) comme ça ?

Azerban
2021-11-11 16:43:36

Le 11 novembre 2021 à 16:42:35 :

Le 11 novembre 2021 à 16:41:10 :

Le 11 novembre 2021 à 16:39:43 :
Tu fais un while en incrémentant n++ et la condition de sortie c'est quand ton truc est inférieur à ton résultat.

Après je sais pas comment on manipule des grands nombres en python, je sais qu'en Java il y a les BigInteger ou les BigFloat mais je sais pas trop sur ce langage :(

Python est un langage dynamique, pas besoin de typer les variables :ok:

Mais il accepte 10^(-101) comme ça ?

Je ne pense pas que le nombre soit aussi grand. À mon avis l'auteur a mal recopié l'énoncé.

Ligne8
2021-11-11 16:44:16

Sinon t'as qu'à te la péter en faisant une fonction factorielle en mode récursif

Abricotdu38
2021-11-11 16:44:38

Le 11 novembre 2021 à 16:37:38 :
Le point d'exclamation c'est pour la factorielle ? Ou tu t'es trompé en postant l'énoncé ?

cest factorielle

Abricotdu38
2021-11-11 16:45:14

Le 11 novembre 2021 à 16:44:16 :
Sinon t'as qu'à te la péter en faisant une fonction factorielle en mode récursif

ba jai fais un truc comme ca mais ca marche pas def factorielle(n):
if n == 0:
return 1
else:
F = 1
for k in range(2,n+1):
F = F * k
return F

for i in range (100):
i = factorielle(i+1)
while i < 3*(10**101):
i+=factorielle(i+1)
print(i)

Abricotdu38
2021-11-11 16:45:36

Le 11 novembre 2021 à 16:42:35 :

Le 11 novembre 2021 à 16:41:10 :

Le 11 novembre 2021 à 16:39:43 :
Tu fais un while en incrémentant n++ et la condition de sortie c'est quand ton truc est inférieur à ton résultat.

Après je sais pas comment on manipule des grands nombres en python, je sais qu'en Java il y a les BigInteger ou les BigFloat mais je sais pas trop sur ce langage :(

Python est un langage dynamique, pas besoin de typer les variables :ok:

Mais il accepte 10^(-101) comme ça ?

jespere

Abricotdu38
2021-11-11 16:46:27

Le 11 novembre 2021 à 16:45:14 :

Le 11 novembre 2021 à 16:44:16 :
Sinon t'as qu'à te la péter en faisant une fonction factorielle en mode récursif

ba jai fais un truc comme ca en reecrivant l'equation

def factorielle(n)

if n == 0:
return 1
else:
F = 1
for k in range(2,n+1):
F = F * k
return F

for i in range (100):
i = factorielle(i+1)
while i < 3*(10**101):
i+=factorielle(i+1)
print(i)

Ligne8
2021-11-11 16:46:37

Le 11 novembre 2021 à 16:45:14 :

Le 11 novembre 2021 à 16:44:16 :
Sinon t'as qu'à te la péter en faisant une fonction factorielle en mode récursif

ba jai fais un truc comme ca mais ca marche pas def factorielle(n):
if n == 0:
return 1
else:
F = 1
for k in range(2,n+1):
F = F * k
return F

for i in range (100):
i = factorielle(i+1)
while i < 3*(10**101):
i+=factorielle(i+1)
print(i)

Utilise la balise code sérieux, surtout avec ce langage dégueulasse qu'est python

Abricotdu38
2021-11-11 16:49:47

Le 11 novembre 2021 à 16:46:37 :

Le 11 novembre 2021 à 16:45:14 :

Le 11 novembre 2021 à 16:44:16 :
Sinon t'as qu'à te la péter en faisant une fonction factorielle en mode récursif

ba jai fais un truc comme ca mais ca marche pas def factorielle(n):
if n == 0:
return 1
else:
F = 1
for k in range(2,n+1):
F = F * k
return F

for i in range (100):
i = factorielle(i+1)
while i < 3*(10**101):
i+=factorielle(i+1)
print(i)

Utilise la balise code sérieux, surtout avec ce langage dégueulasse qu'est python

sorry je m'y connais pas trop mais t'arrive pas lire quand meme ?

Infos
Gestion du forum

contact@geevey.com

API disponible. Utilisez le paramètre "api" en GET, peu importe le contenu, sur une page du site.

Notes

    ⚠️ Les archives de novembre sont désormais disponibles.
Non-assumage
    Personne n'a pas assumé de topic pour le moment.