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 :

Compréhension de programmes


Sujet :

Algorithmes et structures de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Janvier 2007
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 17
    Par défaut Compréhension de programmes
    Bonsoir,
    je suis entrain de préparer une épreuve d'informatique mais je reste coincé sur des éxercices, qui sont du type qcm, les voici en pièces jointes.questions 35,36,37,38.
    En fait j'ai un gros problème pour voir l'évolution du temps de calcul, j'essaye de prendre des éxemples particuliers mais bon.

    De plus, concernant l'évolution de la place prise lors de l'éxécution d'un programme(n²,1/n...) auriez vous des méthodes pour la déterminer??

    Par avance merci à tous ceux qui pourront m'aider dans ma préparation.

    P.S: ne faites pas attention aux réponses mises
    Images attachées Images attachées   

  2. #2
    Expert confirmé
    Avatar de PRomu@ld
    Homme Profil pro
    Ingénieur de Recherche
    Inscrit en
    Avril 2005
    Messages
    4 155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 4 155
    Par défaut
    Pour le 35 -> c, la fonction d'ackerman est une fonction qui croit très rapidement, par conséquent il y a de forte chances que tu dépasse la capacité du type considéré.

    Pour le 36 -> d, la fonction d'ackerman a une croissance exponentielle. On l'utilise pour quelques algos (notament sur les ensembles disjoints). Par exemple Ack(4,n) vaut 2^(2^2^...) et ce qui est dans la parenthèse est répété n fois. Ack(4,4) dépasse le nombre de particules élémentaires de l'univers...

    Pour le 37 -> b , la fonction termine pour n > 1 ( sous réserve aussi que le résultat soit dans la capacité des entiers).

    Pour le 38 -> a, il manque un cas pour traiter fibo(1), car on va avoir un appel à fibo (1 - 2) ce qui est indéfini.

    Pour ce qui est de la fonction d'ackerman, tu dois avoir quelque chose dans le Knuth il me semble et également quelque chose dans le Cormen (mais il me semble que c'est seulement le Cas particulier de A(n,n) ).

  3. #3
    Membre averti
    Inscrit en
    Janvier 2007
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 17
    Par défaut
    Merci pour vos réponses, mais quelque chose me chagrine, la réponse c pour la 35.Vous dites qu'il y a de forte chance pour que la capacité du type considéré soit dépassée mais en même temps la réponse c correspond à:"doit théoriquement se terminer toujours, aux problèmes de tps de calcul et de place mémoire près"
    Peut on dans ce cas dire que la bonne est la c?, sachez que la réponse e est possible...

  4. #4
    Membre confirmé Avatar de fomazou
    Inscrit en
    Mars 2004
    Messages
    220
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 220
    Par défaut en bref
    35 (c), la fonction d'ackerman est une fonction qui croit très rapidement
    36 (d), la fonction d'ackerman a une croissance exponentielle.
    37 (b) , la fonction termine pour n > 1
    38 (a),

  5. #5
    Expert confirmé
    Avatar de PRomu@ld
    Homme Profil pro
    Ingénieur de Recherche
    Inscrit en
    Avril 2005
    Messages
    4 155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 4 155
    Par défaut
    35 (c), la fonction d'ackerman est une fonction qui croit très rapidement
    36 (d), la fonction d'ackerman a une croissance exponentielle.
    37 (b) , la fonction termine pour n > 1
    38 (a),
    C'est pas ce que je viens de dire ?


    doit théoriquement se terminer toujours, aux problèmes de tps de calcul et de place mémoire près
    Mathématiquement la fonction d'ackerman termine toujours, or dans un contexte pratique la fonction crois tellement rapidement et donc pour certaines valeurs, la fonction va provoquer un débordement de type, c'est bien ce qui est précisé: "aux problèmes de place près". Ca me parait donc la réponse la plus adéquat. Si tu veux le prouver, c'est pas bien compliqué, quelque soit le cas, soit tu maintiens la valeur d'un paramètre, soit tu la fait décroire (ça mériterait une étude un peu plus approfondie mais l'idée est là).

  6. #6
    Membre averti
    Inscrit en
    Janvier 2007
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 17
    Par défaut
    Merci encore à toi PRomu@ld, tes réponses sont précises et plutôt claires(ce n'est pas toujours le cas)

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

Discussions similaires

  1. Problème de compréhension d'un programme C
    Par soso78 dans le forum Débuter
    Réponses: 8
    Dernier message: 28/01/2009, 19h13
  2. Réponses: 2
    Dernier message: 08/01/2008, 10h06
  3. [TP] Compréhension d'un petit programme
    Par sissi25 dans le forum Turbo Pascal
    Réponses: 2
    Dernier message: 19/06/2007, 19h48
  4. Un programme pas trop compréhensible
    Par killer75 dans le forum C++
    Réponses: 25
    Dernier message: 19/12/2006, 13h09
  5. [Débutante] Compréhension programme - mode debug
    Par bolo dans le forum Assembleur
    Réponses: 14
    Dernier message: 07/01/2005, 18h33

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