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

Pascal Discussion :

Formuler des équations


Sujet :

Pascal

  1. #1
    Futur Membre du Club
    Inscrit en
    Novembre 2008
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 13
    Points : 7
    Points
    7
    Par défaut Formuler des équations
    Bonjour, tout le monde et merci de prendre le temps de lire ce message.
    Je rencontre un problème sur un exercice de programmation. Je n'arrive pas à formuler des équations sous dev pascal.

    Voici l'énoncé que je n'arrive pas à résoudre.
    "Si l'on additionne les deux nombres mystères on obtient 2004, si l'on calcul leur différence ( le plus grand moins le plus petit) et si l'on retranche 1 à cette différence, cela donne 1105.
    Écrire un programme Pascal qui calcule ( grâce à des équations ) et affiche la valeur de ces deux nombres."

    Je bloque complètement dès le début :S.
    Merci de votre future aide.
    AdR

  2. #2
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 942
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 942
    Points : 5 654
    Points
    5 654
    Par défaut
    Hai,

    Ce n'est pas un problème de Pascal, mais d'algorithme.

    Comment fais-tu à la main pour résoudre ça ?

    Papier + crayon, tu notes comment tu t'y prends ...

    ... ton programme n'a plus qu'à faire la même chose.
    Si les cons volaient, il ferait nuit à midi.

  3. #3
    Futur Membre du Club
    Inscrit en
    Novembre 2008
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 13
    Points : 7
    Points
    7
    Par défaut
    Et bien sur" papier + crayon " ( xD ) je pose un système de deux équations à deux inconnues.

    Si x>y

    x + y = 2004
    x - y = 1105

    et je le résous par la méthode collège ( désolé je ne sais plus comment elle s'appelle ^^ ) ou celle de Gauss.

    Mais voila le but n'est pas d'indiquer à l'ordinateur les étapes qu'un homme suit ? enfin tu crois qu'il n'y a pas, d'autres moyens de résoudre cette équation ?

  4. #4
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 942
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 942
    Points : 5 654
    Points
    5 654
    Par défaut
    Boe,

    À ton avis, comment fonctionnent tous les logiciels de calcul ?

    Tu penses qu'on a réécrit toute la mathématique pour eux ?

    Au fait, ton système d'équations est faux, car
    Citation Envoyé par AdR76790 Voir le message
    "Si l'on additionne les deux nombres mystères on obtient 2004, si l'on calcul leur différence ( le plus grand moins le plus petit) et si l'on retranche 1 à cette différence, cela donne 1105.
    on a donc a-b-1 = 1105 ==> a-b = 1106.
    Si les cons volaient, il ferait nuit à midi.

  5. #5
    Futur Membre du Club
    Inscrit en
    Novembre 2008
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 13
    Points : 7
    Points
    7
    Par défaut
    Arf bien vu xD
    Oki, dans ce cas je me mets d'arrache pied au travail, désolé du dérangement !
    Merci.
    AdR

  6. #6
    Expert confirmé
    Avatar de krachik
    Inscrit en
    Décembre 2004
    Messages
    1 964
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 964
    Points : 4 015
    Points
    4 015
    Par défaut
    Bonjour
    Tu devrais très vite t'en tirer, il faut juste trouver l'algorithmique de résolution de l'équation et comme il y a que 2 inconnues ça relativement plus simple. Avec une méthode de Cramer ça ira vite connaissant le coefficients de x et y sur la première et deuxième ligne. Bon après ta d'autres algo de résolutions

    Cordialement
    Je suis ce que je suis grâce à ce que nous sommes tous Humanité aux Humains!! !

    Entre ce que je pense, ce que je veux dire, ce que je crois dire, ce que je dis ce que vous avez envie d'entendre, ce que vous croyez entendre, ce que vous entendez, ce que vous avez envie de comprendre, ce que vous comprenez ... Il y a dix possibilités que nous ayons des difficultés à communiquer. Mais essayons quand meme ....... E. Wells

  7. #7
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 942
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 942
    Points : 5 654
    Points
    5 654
    Par défaut
    Voa,

    Côté algorithme, je ne pense pas que tu aies à trop te casser la tête : pour moi, d'après l'énoncé, il suffit de savoir résoudre le genre de cas cité, à savoir trouver 2 inconnues dont on connaît la somme et la différence.
    Si les cons volaient, il ferait nuit à midi.

  8. #8
    Futur Membre du Club
    Inscrit en
    Novembre 2008
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 13
    Points : 7
    Points
    7
    Par défaut
    Oui ça y est j'ia trouvé,
    fallait juste dire que :
    si
    a1 est le coef de x dans l'équation 1
    a2 ..........................................2
    b1....................y......................1
    b2............................................2
    T1 le total de l'équation 1
    t2 ............................2

    y:= (-T1 + ( a1*t2 ) / a2) / ((a1*b2 ) / a2 - b1 ) ;
    et donc x facile à trouver apres.

    Enfin en tout cas ça me donne la bonne réponse !

  9. #9
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 942
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 942
    Points : 5 654
    Points
    5 654
    Par défaut
    Coe,
    Citation Envoyé par AdR76790 Voir le message
    Oui ça y est j'ia trouvé,
    fallait juste dire que :
    si
    a1 est le coef de x dans l'équation 1
    a2 ..........................................2
    b1....................y......................1
    b2............................................2
    T1 le total de l'équation 1
    t2 ............................2

    y:= (-T1 + ( a1*t2 ) / a2) / ((a1*b2 ) / a2 - b1 ) ;
    et donc x facile à trouver apres.

    Enfin en tout cas ça me donne la bonne réponse !
    Et si a2 = 0, bingo.

    S'ils sont prévisibles, toujours prendre en compte les cas pouvant conduire à une erreur, c'est une des règles pour avoir un programme correct.
    Si les cons volaient, il ferait nuit à midi.

  10. #10
    Futur Membre du Club
    Inscrit en
    Novembre 2008
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 13
    Points : 7
    Points
    7
    Par défaut
    Oui bingo comme tu dis, en plus ça marche pas tout le temps, enfin dans le cadre de mon problème ça marche mais sinon moyen moyen même très moyen !
    Pourtant je pense n'avoir fait aucune erreur de calcul littéral.
    Enfin bref tant pis, je verrai quand je serais en autre chose que "bac+1" xD
    Cramer je connais pas désolé j'ai appris que Gauss pour le moment.

  11. #11
    Membre éclairé
    Avatar de Wachter
    Homme Profil pro
    Développeur
    Inscrit en
    Octobre 2008
    Messages
    404
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Octobre 2008
    Messages : 404
    Points : 734
    Points
    734
    Par défaut
    Bonsoir,

    Citation Envoyé par AdR76790 Voir le message
    y:= (-T1 + ( a1*t2 ) / a2) / ((a1*b2 ) / a2 - b1 ) ;
    Tu es sûr de tes calculs ? Enfin, moi j'ai trouvé ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    x = ((b2 * T1) - (b1 * T2)) / ((a1 * b2) - (a2 * b1)) .......... (1)
    y = ((a2 * T1) - (a1 * T2)) / ((a2 * b1) - (a1 * b2)) .......... (2)
    Bref, tu calcules x de l'équation (1) puis tu détermines y en remplaçant x dans l'une de ces équations :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    y = (T1 - (a1 * x)) / b1 ou bien y = (T2 - (a2 * x)) / b2
    Soit tu calcules y de l'équation (2) et tu déduis ensuite x en suivant le même procédé.

    --
    Wachter
    Code parrain certification Voltaire : NTMPH759

  12. #12
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 942
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 942
    Points : 5 654
    Points
    5 654
    Par défaut
    Woe,

    Je crois que tu te compliques beaucoup la vie.

    Comme je l'ai déjà dit, selon l'énoncé, il suffit de savoir résoudre le genre de cas cité, à savoir trouver 2 inconnues dont on connaît la somme et la différence, il n'y a pas de référence à savoir résoudre autre chose.

    On a donc

    S(omme) = x + y
    D(différence) = x - y

    La solution saute aux yeux.
    Si les cons volaient, il ferait nuit à midi.

  13. #13
    Membre éclairé
    Avatar de Wachter
    Homme Profil pro
    Développeur
    Inscrit en
    Octobre 2008
    Messages
    404
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Octobre 2008
    Messages : 404
    Points : 734
    Points
    734
    Par défaut
    Bonjour,

    Citation Envoyé par droggo Voir le message
    Woe,

    Je crois que tu te compliques beaucoup la vie.
    Non, détrompe-toi, l'auteur de ce thread veut généraliser la solution !
    Citation Envoyé par droggo Voir le message
    Comme je l'ai déjà dit, selon l'énoncé, il suffit de savoir résoudre le genre de cas cité, à savoir trouver 2 inconnues dont on connaît la somme et la différence, il n'y a pas de référence à savoir résoudre autre chose.
    Tu dis ça à qui ?

    Citation Envoyé par droggo Voir le message
    S(somme) = x + y
    D(différence) = x - y

    La solution saute aux yeux.
    Tu te répètes, ça a déjà été dit !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    y:= (-T1 + ( a1*t2 ) / a2) / ((a1*b2 ) / a2 - b1 ) ;

    Enfin en tout cas ça me donne la bonne réponse !
    Et si a2 = 0, bingo.
    Si on critique juste pour la critique, ce n'est pas bien ! Ton message n'apporte pas grand-chose et tu ne t'es donné même pas la peine de vérifier s'il a fait les calculs correctement, tu as vu juste la division par a2 !

    Et pour finir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    x = (somme + différence) / 2
    y = (somme - différence) / 2
    Cela, c'est pour le posteur du message et non pas pour toi !

    --
    Wachter
    Code parrain certification Voltaire : NTMPH759

  14. #14
    Futur Membre du Club
    Inscrit en
    Novembre 2008
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 13
    Points : 7
    Points
    7
    Par défaut
    Citation Envoyé par Wachter Voir le message
    Bonsoir,


    Tu es sûr de tes calculs ? Enfin, moi j'ai trouvé ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    x = ((b2 * T1) - (b1 * T2)) / ((a1 * b2) - (a2 * b1)) .......... (1)
    y = ((a2 * T1) - (a1 * T2)) / ((a2 * b1) - (a1 * b2)) .......... (2)
    Bref, tu calcules x de l'équation (1) puis tu détermines y en remplaçant x dans l'une de ces équations :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    y = (T1 - (a1 * x)) / b1 ou bien y = (T2 - (a2 * x)) / b2
    Soit tu calcules y de l'équation (2) et tu déduis ensuite x en suivant le même procédé.

    --
    Wachter
    Et oui, c'est watcher le champion il a trouvé xD
    Bien sympa en tout cas ce forum je repasserai un de ces jours qui sait peut être pour aider des gens.

    Bonne continuation à vous tous !

  15. #15
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 942
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 942
    Points : 5 654
    Points
    5 654
    Par défaut
    Hoe,
    Citation Envoyé par Wachter Voir le message
    Non, détrompe-toi, l'auteur de ce thread veut généraliser la solution !
    Mais c'est un exercice, et l'énoncé ne demande pas de généraliser.
    Si un de mes élèves me donne une solution comme ça, il n'aura pas 0, bien sûr, mais pas la meilleure note non plus, car allant bien au-delà de l'exercice, ce qui n'est pas le but. Le but est de faire un petit programme tout simple pour résoudre un système d'équations tout simple, ne faisant aucune allusion à des coefficients eux-mêmes variables.

    On peut louer l'effort, mais quand par exemple on me demande de montrer qu'un nombre N est premier, je ne passe pas par la démonstration de l'existence d'une infinité de premiers, ou toute autre démonstration les concernant, si elle ne s'applique pas directement au problème.

    Citation Envoyé par Wachter Voir le message
    Tu te répètes, ça a déjà été dit !
    Déjà dit, mais pas pris en compte.
    Si on ne répétait jamais rien, l'homme en serait probablement encore à ne pas savoir faire du feu, et même à ne pas savoir l'entretenir (ce serait peut-être mieux pour la vie sur Terre en général, mais là n'est pas la question ).

    Citation Envoyé par Wachter Voir le message
    Si on critique juste pour la critique, ce n'est pas bien ! Ton message n'apporte pas grand-chose et tu ne t'es donné même pas la peine de vérifier s'il a fait les calculs correctement, tu as vu juste la division par a2 !
    Non, je ne me suis pas inquiété de la validité de l'équation donnée, et ce n'est pas le problème.
    Le problème lié est que dans l'équation proposée, il y a une division par une variable qui peut valoir 0, et il fallait prévoir d'intercepter l'erreur.

    Je préfère une solution fausse, erreur purement mathématique et non de programmation, avec exploitation propre de ses conséquences - ici, une possible division par 0 -, à une solution exacte mal exploitée par le programme.
    Si les cons volaient, il ferait nuit à midi.

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

Discussions similaires

  1. Formule dans la légende d'une figure et problème de numérotation des équations
    Par le001 dans le forum Tableaux - Graphiques - Images - Flottants
    Réponses: 8
    Dernier message: 21/07/2013, 20h03
  2. Numérotation des équations
    Par tawada dans le forum Mathématiques - Sciences
    Réponses: 0
    Dernier message: 24/08/2007, 16h09
  3. Comment encadrer des équations ?
    Par DeKay dans le forum Mathématiques - Sciences
    Réponses: 8
    Dernier message: 19/01/2007, 13h59
  4. Numérotation des équations
    Par salseropom dans le forum Mathématiques - Sciences
    Réponses: 3
    Dernier message: 16/06/2006, 14h26

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