IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Probleme de fonction Eratosthene


Sujet :

Python

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2016
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2016
    Messages : 50
    Points : 11
    Points
    11
    Par défaut Probleme de fonction Eratosthene
    Bonjour,
    J'ai un problème avec un exercice qui m'est demandé. En effet, on me demande d'écrire une fonction retournant la liste des nombres premiers inférieurs ou égaux a N. On me demande d'utiliser le crible d’Ératosthène ainsi que la méthode L.remove(item) associé à la liste L. Je ne sais pas par où commencer et si quelqu'un pouvait m'aider svp

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,

    Citation Envoyé par requie Voir le message
    Je ne sais pas par où commencer et si quelqu'un pouvait m'aider svp
    Vous avez certainement lu la page de Wikipedia qui raconte de quoi çà parle, et choisi un des algo. proposés...
    Un bon début est d'essayer de traduire le pseudo code en Python.
    Et si vous ne vous en sortez pas, sans avoir posté ce que vous avez essayé de faire on ne pourra pas vous aider(*).

    - W
    (*) le but de ce genre d'exercice n'est pas tellement d'obtenir un résultat mais ce que vous allez découvrir (dans l'univers de la programmation) en essayant de le coder par vous même.
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2016
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2016
    Messages : 50
    Points : 11
    Points
    11
    Par défaut
    Merci pour cette reponse,
    En essayant de traduire un pseudo code, j'obtiens:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    N=100
    L=list(range(2,N))
    mini=L[0]
     
    while mini**2<=N:
        for i in L[mini:]:
            if i % mini == 0:
                L.remove(i)
        mini+=1 
    print(L)
    Je l'ai tester sur pyzo et il semble fonctionner mais j'aimerai savoir si il est possible d'optimiser ce programme

  4. #4
    Membre chevronné
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2013
    Messages
    1 608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 608
    Points : 2 072
    Points
    2 072
    Par défaut
    Oh que oui !
    Il y a plein d'exemple sur la toile.
    Un exemple au hasard :
    http://www.maths-algo.fr/index.php/i...-d-erathostene
    Pas d'aide par mp.

  5. #5
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2016
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2016
    Messages : 50
    Points : 11
    Points
    11
    Par défaut
    Effectivement mais je ne comprends pas pourquoi le fait de remplacer par des 0 au lieu de supprimer les nombres non premiers simplifie mon programme. Quelqu'un pourrait t-il m'expliquer svp

  6. #6
    Expert éminent

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 300
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 300
    Points : 6 780
    Points
    6 780
    Par défaut
    Citation Envoyé par requie Voir le message
    Effectivement mais je ne comprends pas pourquoi le fait de remplacer par des 0 au lieu de supprimer les nombres non premiers simplifie mon programme. Quelqu'un pourrait t-il m'expliquer svp
    Il ne s'agit pas d'une simplification et la raison est expliquée dans le texte au paragraphe : a) Critiques

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. probleme de fonction javascript
    Par cach dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 06/07/2005, 10h34
  2. Réponses: 17
    Dernier message: 24/03/2005, 12h24
  3. [langage] problème avec fonction read
    Par domidum54 dans le forum Langage
    Réponses: 2
    Dernier message: 30/03/2004, 20h42
  4. [VB6]Problème de fonction
    Par mustang-ffw02 dans le forum VB 6 et antérieur
    Réponses: 13
    Dernier message: 27/03/2004, 15h09
  5. Probleme de fonction
    Par yenna dans le forum ASP
    Réponses: 6
    Dernier message: 01/03/2004, 14h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo