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

Turbo Pascal Discussion :

Boucles répétitives


Sujet :

Turbo Pascal

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Novembre 2008
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 13
    Par défaut Boucles répétitives
    Bonjour, je suis en première année de classe préparatoire intégrée pour une école d'ingénieur et je rencontre un petit problème sur mon exercice sur les for do, while do et repeat until.
    En effet, je ne suis pas du tout ici afin de vous demandez la réponse à mon exercice, je préfère de loin le réalisé tout seul.
    Je n'arrive pas à mettre en lien les éléments de la boucle, et de les multiplié ( par exemple ) entre eux, à l'exécution du programme, ceci me mets plusieurs éléments distincts, et moi je n'arrive pas à tous les regrouper en un seul résultat.
    Merci d'avance pour vos réponses et merci d'avoir prit le temps de lire ce sujet, bonne journée à tous.

  2. #2
    Rédacteur
    Avatar de darrylsite
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 299
    Par défaut
    j'aimerais bien t' aider mais avec ce que tu as donné comme explication, je crains que ça ne puisse etre possible. Sois un peu plus precis dans tes propos et si possible donne nous le code que tu as dejà ecris, ça nous aiderait enormement à te comprendre.

  3. #3
    Membre averti
    Inscrit en
    Novembre 2008
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 13
    Par défaut
    Oui désolé, après relecture c'est vrai que ça manque de clarté.
    Mais le problème c'est que je ne sais vraiment pas par exemple comment calculer la factorielle d'un nombre x.

    Pour le moment mon code s'arrête à la strict base :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    Program factorielle;
     
    var 
    x : integer;
     
    begin;
     
    writeln ('Entrer une valeur et le programme calculera sa factorielle ');
    readln (x);
     
    (* là je pense qu'il faut utilisé for x:= 2 to x do mais enfin bref, je suis dans le brouillard le plus épais qu'il soit *)
     
    readln;
    end.
    Enfin bref, je n'ai rien de solide !

  4. #4
    Rédacteur
    Avatar de darrylsite
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 299
    Par défaut
    peux tu nous dire le probleme que tu rencontre?
    Pour moi, la definition mathematique est tres claire:
    n!=n*(n-1)*(n-2)*...*2*1
    Si le probleme est au niveau de la programmation, je crois que tu pourras t' en tirer si tu penses à faire une boucle for par exemple.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    resultat:=1;
    for i:=1 to x do
     resultat:=resultat*i;
    writeln('fact(',x,')= ', resultat);

  5. #5
    Rédacteur/Modérateur
    Avatar de M.Dlb
    Inscrit en
    Avril 2002
    Messages
    2 466
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Avril 2002
    Messages : 2 466
    Par défaut
    Il faut analyser ce qu'est le calcul à faire, en l'occurrence calcul de factorielle.

    Factorielle de x = (x - 0) * (x - 1) * (x - 2) * ... * (x - (x - 1)) * (x - x)

    Ce qui varie ici, c'est le nombre qui est soustrait à x à chaque pas... C'est ce chiffre que tu dois faire varier dans la boucle

  6. #6
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 971
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 971
    Par défaut
    Gia,

    Citation Envoyé par wormful_sickfoot Voir le message
    Il faut analyser ce qu'est le calcul à faire, en l'occurrence calcul de factorielle.

    Factorielle de x = (x - 0) * (x - 1) * (x - 2) * ... * (x - (x - 1)) * (x - x)

    Ce qui varie ici, c'est le nombre qui est soustrait à x à chaque pas... C'est ce chiffre que tu dois faire varier dans la boucle
    et comme (x-x) = 0, on a x! = 0.

    Une manière plus classique de l'écrire est

    Factorielle de x = 1*2*3...*(x-1)*x

    qui évite cette petite erreur d'inattention.

  7. #7
    Membre averti
    Inscrit en
    Novembre 2008
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 13
    Par défaut
    Merci Darrylsite, j'ai compris mon erreur, désolé j'arrivais pas à m'exprimer.
    Je savais ce qu'étais t! mais je ne savais pas la méthode pour demande au programme de réalisé ce calcul, mais c'est bon j'ai compis.
    Merci de vos conseils en tout cas, merci de m'avoir dédié un peu de votre temps, j'espère réussir mon future DS.
    Bonne soirée à vous tous !

  8. #8
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 971
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 971
    Par défaut
    Jai,
    Citation Envoyé par AdR76790 Voir le message
    ...
    Je savais ce qu'étais t! mais je ne savais pas la méthode pour demande au programme de réalisé ce calcul,
    ...
    Revenir aux bonnes vieilles méthodes : papier + crayon, et écrire comment tu fais le calcul à la main ==> tu as la solution théorique. Ensuite, ce n'est plus que de la syntaxe dans le langage visé.

Discussions similaires

  1. Action répétitive tout les X fois dans une boucle
    Par benymypony dans le forum Débuter
    Réponses: 2
    Dernier message: 20/12/2011, 15h24
  2. [XSLT] Faire une boucle sur une variable [i]
    Par PoT_de_NuTeLLa dans le forum XSL/XSLT/XPATH
    Réponses: 8
    Dernier message: 07/06/2010, 12h45
  3. Boucle répétitive pour mon programme
    Par jena dans le forum MATLAB
    Réponses: 2
    Dernier message: 19/05/2007, 12h41
  4. Sortir d'un progamme qui boucle ou qui refresh
    Par mikevador02 dans le forum C
    Réponses: 12
    Dernier message: 14/12/2002, 09h38
  5. Réponses: 2
    Dernier message: 29/05/2002, 20h43

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