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

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de ABN84
    Inscrit en
    Octobre 2007
    Messages
    410
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Octobre 2007
    Messages : 410
    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

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

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 772
    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 : 77
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 772
    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 : 84
    Localisation : Suisse

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 2 978
    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

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

    Informations forums :
    Inscription : Octobre 2007
    Messages : 410
    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.

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

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 772
    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...)

+ 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