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

Algorithmes et structures de données Discussion :

génération de suite


Sujet :

Algorithmes et structures de données

  1. #1
    Membre habitué Avatar de ABN84
    Inscrit en
    Octobre 2007
    Messages
    410
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Octobre 2007
    Messages : 410
    Points : 149
    Points
    149
    Par défaut génération de suite
    bonjour,
    je cherche generer les "n" elements de ces deux suites:
    0 40 40 0 0 40 40 0 0 ...
    20 20 22 22 24 24 26 26 ...
    j'ai du mal à trouver un algo pour faire ça.
    merci
    "Celui qui n'a jamais fait d'erreurs n'a jamais rien essayé"A. Einstein
    "La différence entre la stupidité et le génie est que le génie a ses limites"A. Einstein
    "c'est en forgeant qu'on devient forgeron"

  2. #2
    Rédacteur
    Avatar de Zavonen
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 772
    Détails du profil
    Informations personnelles :
    Âge : 76
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 772
    Points : 1 913
    Points
    1 913
    Par défaut
    Pour la première je n'ai pas compris la récurrence (ce n'est pas clair).
    Pour la seconde si tu retranches 20 tu trouves:
    0 0 2 2 4 4 6 6
    Si tu divises par 2 tu trouves
    0 0 1 1 2 2 3 3
    Cette suite c'est E(n/2) partie entière de n/2
    Donc au final:
    un=20+2E(n/2)
    Ce qu'on trouve est plus important que ce qu'on cherche.
    Maths de base pour les nuls (et les autres...)

  3. #3
    Rédacteur
    Avatar de Zavonen
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 772
    Détails du profil
    Informations personnelles :
    Âge : 76
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 772
    Points : 1 913
    Points
    1 913
    Par défaut
    Pour la première si c'est ce que je crois comprendre (un zéro de plus à chaque fois entre les doublons de 40), cela peut faire l'affaire: (à optimiser).
    Code Python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    from math import sqrt
     
    def f(i):
        return (i*i+7*i+2)/2
     
    def u(n):
        i=0
        while f(i) <=n:
            if f(i)==n or f(i)==n-1:
                return 40
            i=i+1
        return 0
     
    for n in range(0,12):
        print u(n)
    Ce qu'on trouve est plus important que ce qu'on cherche.
    Maths de base pour les nuls (et les autres...)

  4. #4
    Rédacteur

    Homme Profil pro
    Comme retraité, des masses
    Inscrit en
    Avril 2007
    Messages
    2 978
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 83
    Localisation : Suisse

    Informations professionnelles :
    Activité : Comme retraité, des masses
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 2 978
    Points : 5 179
    Points
    5 179
    Par défaut
    Salut!
    Tes deux problèmes présentent chacun une infinité de solutions.

    Pour le premier, tu peux avoir, par exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    0 40 40 0 0 40 40 0 0 40 40 0 0 40 40 0 ...
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    0 40 40 0 0 40 40 0 0 0 40 40 0 0 0 0 ...
    Pour le second:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    20 20 22 22 24 24 26 26 24 24 22 22 20 20 22 22 24 24 26 26 ...
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    20 20 22 22 24 24 26 26 20 20 22 22 24 24 26 26 20 20 22 22 24 24 26 26 ...
    Jean-Marc Blanc
    Calcul numérique de processus industriels
    Formation, conseil, développement

    Point n'est besoin d'espérer pour entreprendre, ni de réussir pour persévérer. (Guillaume le Taiseux)

  5. #5
    Membre habitué Avatar de ABN84
    Inscrit en
    Octobre 2007
    Messages
    410
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Octobre 2007
    Messages : 410
    Points : 149
    Points
    149
    Par défaut
    bonsoir à tous,
    la premiere suite est une succession de doubblons de 0 et de 40
    la seconde est une addition de 2 toutes les deux valeurs.
    "Celui qui n'a jamais fait d'erreurs n'a jamais rien essayé"A. Einstein
    "La différence entre la stupidité et le génie est que le génie a ses limites"A. Einstein
    "c'est en forgeant qu'on devient forgeron"

  6. #6
    Rédacteur
    Avatar de Zavonen
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 772
    Détails du profil
    Informations personnelles :
    Âge : 76
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 772
    Points : 1 913
    Points
    1 913
    Par défaut
    Alors voilà pour ta première suite
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    def u(n):
        return 40 if n%4 >=2 else 0
     
    for i in range(0,12):
        print u(i)
    Ce qu'on trouve est plus important que ce qu'on cherche.
    Maths de base pour les nuls (et les autres...)

  7. #7
    Rédacteur

    Homme Profil pro
    Comme retraité, des masses
    Inscrit en
    Avril 2007
    Messages
    2 978
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 83
    Localisation : Suisse

    Informations professionnelles :
    Activité : Comme retraité, des masses
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 2 978
    Points : 5 179
    Points
    5 179
    Par défaut
    Salut!
    la premiere suite est une succession de doubblons de 0 et de 40
    la seconde est une addition de 2 toutes les deux valeurs.
    Comment peux-tu l'affirmer?

    Ce genre de problèmes se rencontre dans les tests de QI pour l'admission au club Mensa. Il permet à n'importe quel génie de se faire passer pour un imbécile.
    Jean-Marc Blanc
    Calcul numérique de processus industriels
    Formation, conseil, développement

    Point n'est besoin d'espérer pour entreprendre, ni de réussir pour persévérer. (Guillaume le Taiseux)

  8. #8
    Membre habitué Avatar de ABN84
    Inscrit en
    Octobre 2007
    Messages
    410
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Octobre 2007
    Messages : 410
    Points : 149
    Points
    149
    Par défaut
    Comment peux-tu l'affirmer?
    Je vois ce que tu veux dire.
    On a demontré qu'on peut avoir une expressin de suite pour n'importe quelle succession de nombres dont apres mes 26 on pourrait donner n'importe quelle valeur et on aurait pu exprimer une suite. mais là n'est pas la question. il ne s'ajit pas de concour de math ni de test de QI. j'avais un probleme de programmation ou j'avais besoin de contruire ces deux suites avec les moins de lignes de code possible c'est tout
    "Celui qui n'a jamais fait d'erreurs n'a jamais rien essayé"A. Einstein
    "La différence entre la stupidité et le génie est que le génie a ses limites"A. Einstein
    "c'est en forgeant qu'on devient forgeron"

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

Discussions similaires

  1. Algorithme O(N) de génération des suites arithmétiques à partir d'un tableau d'entiers
    Par blackbird1 dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 20/05/2015, 16h28
  2. [1.x] pb pager et filter suite génération module admin generator
    Par DidG_like dans le forum Symfony
    Réponses: 3
    Dernier message: 10/05/2011, 14h00
  3. Réponses: 0
    Dernier message: 19/11/2009, 16h09
  4. Réponses: 8
    Dernier message: 11/09/2008, 00h24
  5. Génération de numéro (Suite)
    Par Ataturk dans le forum Access
    Réponses: 2
    Dernier message: 06/03/2007, 17h00

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