Inscription / Connexion Nouveau Sujet
Niveau seconde
Partager :

programmer sous python la somme des 1000 premiers entiers nature

Posté par
Nelcar
06-03-19 à 22:09

Bonjour,
je dois faire un exercice sous python
On me demande de programmer une fonction d'argument n qui retourne la valeur de la variable S l'algorithme précédent
(S   0
(pour i variant de 1 à n
    IS    S+i
Fin Pour)
En déduire la somme des 1000 premiers entiers naturels non nuls.
Alors là c'est la galère totale
j'ai commencé à faire :
def argument(n):
  S=0
   I=0
   for i in range(1,1001):
        S=n(n+1)/2
   return(S)
print(argument(n))

mais pas bon et je ne sais pas ou (ou sont)  est ma erreur
MERCI

Posté par
mathafou Moderateur
re : programmer sous python la somme des 1000 premiers entiers n 06-03-19 à 22:28

Bonjour,

parce que ça ça n'a rien à voir avec une traduction "mot à mot" de l'algorithme donné !

si tu utilises une formule pour calculer directement le resultat final, il n'y a vraiment aucun besoin de faire une boucle !!

Posté par
alb12
re : programmer sous python la somme des 1000 premiers entiers n 06-03-19 à 23:08

salut,
un argument d'une fonction c'est un de ces parametres.
Ce n'est pas son nom.

Posté par
mathafou Moderateur
re : programmer sous python la somme des 1000 premiers entiers n 06-03-19 à 23:37

"argument" n'est pas un mot clé réservé de Python mais un qualificatif ordinaire de la doc pour parler des ... arguments d'une fonction

on peut donc parfaitement appeler une fonction du nom "argument" pourquoi pas ..
(mais c'est un peu sot quand ça n'a rien à voir avec le rôle de cette fonction : calculer une somme d'entiers)

Posté par
Nelcar
re : programmer sous python la somme des 1000 premiers entiers n 07-03-19 à 09:06

Bonjour,
hier j'ai passé pas mal de temps sur python. Je suis arrivée à un résultat bon, voilà ce que j'ai fait :
def entier():
   S=0
   for i in range(1,1001):
        S= S+i
   return(S)

print(entier())

qu'en pensez-vous ?
Merci de votre aide

Posté par
alb12
re : programmer sous python la somme des 1000 premiers entiers n 07-03-19 à 09:14

l'enonce dit d'argument n ...

Posté par
mathafou Moderateur
re : programmer sous python la somme des 1000 premiers entiers n 07-03-19 à 09:17

là, ça marche.
mais on te demande "une fonction d'argument n"
c'est à dire que n doit être un paramètre d'entrée de cette fonction

def entier(n) :
... etc

et
print(entier(1000)) pour calculer S1000

mais ce qui permettrait de l'utiliser pour calculer Sn avec n quelconque et pas seulement 1000

Posté par
Nelcar
re : programmer sous python la somme des 1000 premiers entiers n 07-03-19 à 10:37

Bonjour,
Merci beaucoup pour votre réponse.
Je viens de regarder sur le site python et ça va
merci j'ai un peu mieux compris mais sans manipulation ce n'est pas évident
MERCI BEAUCOUP

Posté par
mathafou Moderateur
re : programmer sous python la somme des 1000 premiers entiers n 07-03-19 à 10:52

"sans manipulation ce n'est pas évident "
pour programmer en Python , et surtout s'assurer de la validité de ce qu'on écrit, il est quasiment indispensable d'installer Python sur son ordi (ou d'utiliser un Python en ligne sur Internet)

et bien sûr de lire soigneusement l'énoncé

écrire une fonction etc
(tester cette fonction avec différentes valeurs de n, dont le résultat est connu)
puis
en déduire ...
c'est à dire ensuite l'utiliser avec n valant 1000

Posté par
Nelcar
re : programmer sous python la somme des 1000 premiers entiers n 07-03-19 à 12:53

Re,
oui c'est sûr, au lycée aucune manipulation. Ma mamy a installé PYTHON sur son ordi pour que je puisse y travailler.

MERCI BEAUCOUP POUR VOTRE AIDE PRECIEUSE

Posté par
alb12
re : programmer sous python la somme des 1000 premiers entiers n 07-03-19 à 14:19

deux remarques:
1/ donner un nom de fonction explicite, ici entier n'est pas tres parlant
2/ ton print est superflu
3/ je te conseille de choisir EduPython

Posté par
mathafou Moderateur
re : programmer sous python la somme des 1000 premiers entiers n 07-03-19 à 14:28

le print est nécessaire si on met l'appel de la fonction dans le module lui même
il est superflu si on appelle la fonction "en ligne de commande"

Posté par
alb12
re : programmer sous python la somme des 1000 premiers entiers n 07-03-19 à 14:42

"oui c'est sûr, au lycée aucune manipulation"
vous n'allez jamais en salle informatique ?

Posté par
Nelcar
re : programmer sous python la somme des 1000 premiers entiers n 07-03-19 à 15:07

Merci à Alb12 et Mathafou
je n'ai pas tout compris
j'ai mis le print pour avoir le résultat (pour vérifier mon travail)
Mathafou :"le print est nécessaire si on met l'appel de la fonction dans le module lui même
il est superflu si on appelle la fonction "en ligne de commande"
je ne comprend pas ce que tu veux dire.
Merci pour m'expliquer.

Posté par
mathafou Moderateur
re : programmer sous python la somme des 1000 premiers entiers n 07-03-19 à 15:32

dans un environnement graphique de développement Python (par exemple EduPython comme recommandé par alb11), appelé de façon générale un IDE (Integrated Development Environment) l'écran ressemble à ça :

programmer sous python la somme des 1000 premiers entiers n

dans le programme lui même un appel entier(5) ne fait que calculer la somme de 1 à 5 et ne fait rien de cette somme
print(entier(10)) calcule la somme de 1 à10 et l'affiche immédiatement (dans la console) dès qu'on lance le programme
comme le montre la valeur 55 qui apparait dès que le programme est lancé

on peut alors taper dans la console des commandes comme entier(1000)
et là il n'y a pas besoin de print car il affiche directement le résultat du calcul demandé quel qu'il soit
par exemple si on tape 4+3 [Entrée] il affiche 7 directement
si on tape entier(1000) il affiche la somme S1000
et on peut faire ainsi dans la console autant d'appels à entier(n) que l'on veut sans avoir à modifier le programme lui-même (sans avoir à modifier la ligne print(entier(..)) qui s'y trouve)

Posté par
mathafou Moderateur
re : programmer sous python la somme des 1000 premiers entiers n 07-03-19 à 15:37

alb12 bien sûr, désolé.

Posté par
Nelcar
re : programmer sous python la somme des 1000 premiers entiers n 07-03-19 à 16:27

Re,
merci beaucoup pour cette explication qui m'a bien aidé à comprendre un peu mieux.

Merci encore.

Posté par
alb12
re : programmer sous python la somme des 1000 premiers entiers n 07-03-19 à 16:33

Bonne continuation avec Python !
et merci à mathafou pour le temps passé à expliquer

Posté par
Nelcar
re : programmer sous python la somme des 1000 premiers entiers n 07-03-19 à 20:07

Merci Alb12 et un grand merci à Mathafou.
Bonne soirée
et encore un grand grand merci



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Inscription gratuite

Fiches en rapport

parmi 1489 fiches de maths

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !