Exerice de Maths Python

Réponses à toutes vos questions de la 2nde à la Terminale toutes séries
human999
Membre Naturel
Messages: 13
Enregistré le: 10 Mar 2019, 10:39

Exerice de Maths Python

par human999 » 10 Mar 2019, 10:51

Bonjour à tous , je suis arrivée à une question de mon exercice ou je ne comprend plus voici la question :

Proposer un algorithme en langage Python permettant de calculer pour tout n ∈ N\{0} la somme suivante :
S= 1 + 1/2 + ··· + 1/i + ··· + 1/n

Quelle est la valeur du plus petit entier n telle que S ≥ mois + jour de votre naissance ? Avec Janvier = 1 · · · Décembre = 12.

Alors le premier problème c'est que je comprend pas la question qu'est-ce-que je dois faire sachant qu'on à peine vu le langage python on a juste recopier un programme qui n'a rien à voir avec celui là . Après plusieurs recherche je pense que je dois faire une boucle de la forme :

n=int(input("saisir la valeur de n:"))
S=0
for i in range (n):
print('i=',i)
S=S+1
print('S='S)


Sauf que je sais pas trop quoi mettre dedans dans l'exercice on parle de Janvier=1 et decembre=12 je dois remplacer n par ces valeurs ? , et qu'est ce que i ? les pointillés correspondent à quoi ?
J'avoue que je suis perdue à cette question pourtant les autres étaient plus abordables mais elles n'ont aucun rapport . Si quelqu'un pouvait m'expliquer comment on procède ça serai génial car j'aimerai bien comprendre si un jour il le met dans un contrôle . Merci à tous et très bonne journée .



Avatar de l’utilisateur
Sa Majesté
Membre Transcendant
Messages: 6275
Enregistré le: 23 Nov 2007, 14:00

Re: Exerice de Maths Python

par Sa Majesté » 10 Mar 2019, 11:46

Salut

Si par exemple tu es née le 10 mars alors :
1) je te souhaite un bon anniversaire :mrgreen:
2) 10 mars donne 10 + 3 = 13 donc tu dois trouver le plus petit n tel que 1+1/2+...+1/n ≥ 13

Avatar de l’utilisateur
chan79
Membre Légendaire
Messages: 10330
Enregistré le: 04 Mar 2007, 19:39

Re: Exerice de Maths Python

par chan79 » 10 Mar 2019, 11:48

human999 a écrit:

n=int(input("saisir la valeur de n:"))
S=0
for i in range (n):
print('i=',i)
S=S+1
print('S='S)



salut
quelques modifs à faire:

n=int(input("saisir la valeur de n:"))
S=0
for i in range(1,n+1):
S=S+1/i

print("S(",n,")=",S)

tu peux aussi utiliser la commande while

human999
Membre Naturel
Messages: 13
Enregistré le: 10 Mar 2019, 10:39

Re: Exerice de Maths Python

par human999 » 10 Mar 2019, 11:55

Salut , merci pour vos réponses donc si j'ai bien compris je prend par exemple mon anniversaire , le 9 septembre je fais 9+9 = 18

Ensuite je reprend ma boucle python et je remplace n par 18 dans n=int et il me donne la valeur de i et je trouve S ?

Avatar de l’utilisateur
Sa Majesté
Membre Transcendant
Messages: 6275
Enregistré le: 23 Nov 2007, 14:00

Re: Exerice de Maths Python

par Sa Majesté » 10 Mar 2019, 12:09

human999 a écrit:Salut , merci pour vos réponses donc si j'ai bien compris je prend par exemple mon anniversaire , le 9 septembre je fais 9+9 = 18

OK

human999 a écrit:Ensuite je reprend ma boucle python et je remplace n par 18 dans n=int et il me donne la valeur de i et je trouve S ?

Non car si tu fais ça, ça va juste te donner la valeur de S pour n=18, c'est-à-dire 1+1/2+1/3+ ... + 1/18.
Or ce que tu veux c'est la plus petite valeur de n pour laquelle 1+1/2+1/3 + ... + 1/n dépasse 18.

human999
Membre Naturel
Messages: 13
Enregistré le: 10 Mar 2019, 10:39

Re: Exerice de Maths Python

par human999 » 10 Mar 2019, 12:18

Mais pour avoir la plus petite valeur de n c'est quoi la méthode prcq je vois pas comment faire puisque j'ai pas bcp de données a part 9 et 18

S= 1 + 1/2 + ? je comprend pas comment je dois faire

Avatar de l’utilisateur
chan79
Membre Légendaire
Messages: 10330
Enregistré le: 04 Mar 2007, 19:39

Re: Exerice de Maths Python

par chan79 » 10 Mar 2019, 12:22

A priori, on y va à tâtons ou bien on fait une boucle pour n

human999
Membre Naturel
Messages: 13
Enregistré le: 10 Mar 2019, 10:39

Re: Exerice de Maths Python

par human999 » 10 Mar 2019, 12:23

Donc il faudrait faire une autre boucle sn-1 mais comment on fait ça ?

human999
Membre Naturel
Messages: 13
Enregistré le: 10 Mar 2019, 10:39

Re: Exerice de Maths Python

par human999 » 10 Mar 2019, 12:37

Sa Majesté a écrit:Non car si tu fais ça, ça va juste te donner la valeur de S pour n=18, c'est-à-dire 1+1/2+1/3+ ... + 1/18.
Or ce que tu veux c'est la plus petite valeur de n pour laquelle 1+1/2+1/3 + ... + 1/n dépasse 18.

Je comprend pas ce que tu veux dire je dois trouve la petite valeur de n mais N=9 comment je peux mettre ça ? tu pourrai m'expliquer stp ?

Avatar de l’utilisateur
chan79
Membre Légendaire
Messages: 10330
Enregistré le: 04 Mar 2007, 19:39

Re: Exerice de Maths Python

par chan79 » 10 Mar 2019, 12:41

je reviens dans 1 heure :)

human999
Membre Naturel
Messages: 13
Enregistré le: 10 Mar 2019, 10:39

Re: Exerice de Maths Python

par human999 » 10 Mar 2019, 12:45

Ok merci bcp a tt à l'heure
chan79 a écrit:je reviens dans 1 heure :)

LB2
Habitué(e)
Messages: 1504
Enregistré le: 05 Nov 2017, 16:32

Re: Exerice de Maths Python

par LB2 » 10 Mar 2019, 12:57

Bonjour,

c'est très important de comprendre que dans ce problème, tu ne sais pas à l'avance combien de termes il te faudra pour dépasser la valeur donnée (18 par exemple)

Une boucle while (exercice : avec quelle condition?) est donc toute indiquée, bien plus adaptée à ton problème qu'une boucle for.

Une boucle for est utile lorsque tu sais à l'avance combien de répétitions (d'itérations) tu souhaites effectuer

human999
Membre Naturel
Messages: 13
Enregistré le: 10 Mar 2019, 10:39

Re: Exerice de Maths Python

par human999 » 10 Mar 2019, 13:04

LB2 a écrit:Bonjour,

c'est très important de comprendre que dans ce problème, tu ne sais pas à l'avance combien de termes il te faudra pour dépasser la valeur donnée (18 par exemple)

Une boucle while (exercice : avec quelle condition?) est donc toute indiquée, bien plus adaptée à ton problème qu'une boucle for.

Une boucle for est utile lorsque tu sais à l'avance combien de répétitions (d'itérations) tu souhaites effectuer



Le problème c'est que je ne sais pas qu'est ce qu'une boucle while et comment résoudre avec mon problème prcq j'ai jamais vu ça tu pourrai m'expliquer stp ?

human999
Membre Naturel
Messages: 13
Enregistré le: 10 Mar 2019, 10:39

Re: Exerice de Maths Python

par human999 » 10 Mar 2019, 13:06

J'ai regardé sur internet et normalement ça serai un truc comme ça mais comment le remplir ? :

S=0
n=0
while S<20
n+=1
S+=n
print(n)


je remplace S par 18 et n comment je fais ?

human999
Membre Naturel
Messages: 13
Enregistré le: 10 Mar 2019, 10:39

Re: Exerice de Maths Python

par human999 » 10 Mar 2019, 13:38

Coucou du coup j'ai fais l' algorithme suivant :

S=0
n=0
while S<18
n+=1
S+=n
print(n)


et je trouve :

>>> from j import *
1
2
3
4
5
6
>>>

Est ce que c'est bon ? je suis pas du tout sûr de moi faut-il que je change quelque chose dans mon algorithme ?merci de votre aide

Avatar de l’utilisateur
chan79
Membre Légendaire
Messages: 10330
Enregistré le: 04 Mar 2007, 19:39

Re: Exerice de Maths Python

par chan79 » 10 Mar 2019, 13:43

Me revoilà!
Essaie:

S,n=0,1
while S<18:
___ S=S+1/n
___ n=n+1
Print(n)

N'oublie pas de vérifier avec le premier programme
Mets nous ton résultat

human999
Membre Naturel
Messages: 13
Enregistré le: 10 Mar 2019, 10:39

Re: Exerice de Maths Python

par human999 » 10 Mar 2019, 13:49

Ca me donne pleins de chiffres compris entre 1400 et 1500

human999
Membre Naturel
Messages: 13
Enregistré le: 10 Mar 2019, 10:39

Re: Exerice de Maths Python

par human999 » 10 Mar 2019, 14:02

chan79 a écrit:Me revoilà!
Essaie:

S,n=0,1
while S<18:
___ S=S+1/n
___ n=n+1
Print(n)

N'oublie pas de vérifier avec le premier programme
Mets nous ton résultat


J'ai refait ton algorithme et peut être que celui ci correspond mieux ?:

S=0
n=0
while S<18
n+=1
S+=n
print(n)


et je trouve :

>>> from j import *
1
2
3
4
5
6
>>>

Avatar de l’utilisateur
chan79
Membre Légendaire
Messages: 10330
Enregistré le: 04 Mar 2007, 19:39

Re: Exerice de Maths Python

par chan79 » 10 Mar 2019, 14:39

c'est 1/n qu'il faut ajouter à S à chaque fois
Image

LB2
Habitué(e)
Messages: 1504
Enregistré le: 05 Nov 2017, 16:32

Re: Exerice de Maths Python

par LB2 » 10 Mar 2019, 14:51

Pour bien comprendre l'algorithme, tu peux afficher n et S à chaque itération de la boucle while.

ça risque de faire beaucoup beaucoup de lignes (36865413) si ta condition est S<18 !

mais tu peux essayer avec la condition S<5 déjà pour comprendre le principe

 

Retourner vers ✎✎ Lycée

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 98 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite