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 :

[TP] Equation du second degré


Sujet :

Turbo Pascal

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    193
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : Tunisie

    Informations forums :
    Inscription : Août 2006
    Messages : 193
    Par défaut [TP] Equation du second degré
    Salut,
    j'ai un probl7me dans un exercice qui me demande de resoudre dans R une 2quation de second degré. Le programme fonctionne mais il m'affiche un message d'erreur quand delta < 0
    Runtime error 207 at 0001:0137.
    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    program exercice6 ;
     
    uses wincrt ;
     
    var x1,x2,a,b,c,d,x,d1 : real ;
     
    begin
    writeln('ecrire a :');
    readln(a);
    writeln('ecrire b :');
    readln(b);
    writeln('ecrire c :');
    readln(c);
    d1:=(b*b)-(4*a*c) ;
    d:= sqrt(d1) ;
     
    if d >=0
     then
      begin
      x1:=(-b-d)/(2*a) ; 
      x2:=(-b+d)/(2*a) ;
      writeln(x1 :0 :3);
      writeln(x2 :0 :3);
      end
    else  if d1 < 0
     then  writeln('l''equation n''admet pas de solution');  
     
    end.
    Merci d'avance pour votre réponse

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    633
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 633
    Par défaut
    Bonjour,

    Tu sais manifestement résoudre l'équation, tu interceptes bien le fait que delta puisse être négatif, alors, je me demande :

    Pourquoi calcules-tu sqrt(delta) avant d'avoir testé s'il est positif ou négatif ?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    193
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : Tunisie

    Informations forums :
    Inscription : Août 2006
    Messages : 193
    Par défaut
    Citation Envoyé par thewho
    Bonjour,

    Tu sais manifestement résoudre l'équation, tu interceptes bien le fait que delta puisse être négatif, alors, je me demande :

    Pourquoi calcules-tu sqrt(delta) avant d'avoir testé s'il est positif ou négatif ?
    Merci pour ta réponse rapide, j'ai fait cette faute car je suis un newbie(17 ans" 2 mois d'experience avec le pascal")
    voila le bon code
    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    program exercice6 ;
     
    uses wincrt ;
     
    var x1,x2,a,b,c,d,x,d1 : real ;
     
    begin
    writeln('ecrire a :');
    readln(a);
    writeln('ecrire b :');
    readln(b);
    writeln('ecrire c :');
    readln(c);
    d1:=(b*b)-(4*a*c) ;
     
     
    if d1 >= 0
     then
      begin
      d:= sqrt(d1) ;
      x1:=(-b-d)/(2*a) ; 
      x2:=(-b+d)/(2*a) ;
      writeln(x1 :0 :3);
      writeln(x2 :0 :3);
      end
    else  if  0 > d1
     then  writeln('l''equation n''admet pas de solution');  
     
    end.
    merci encore

  4. #4
    Membre très actif
    Avatar de diden138
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    714
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2006
    Messages : 714
    Par défaut Re:
    Tu sais je vais te bombarder de remarque :
    1er -> ou est la gestion des erreurs si l'uilisateur entre une lettre au lieux d'un chiffre.
    2eme-> chose ajoute un readln a la fin de ton programme pour que tu puisse regarder le resultat directement sans réapuyer sur ctrl+F9
    3eme-> chose tu a oublié beacoup de cas possible par exemple si a=0 ton equation du 2eme degré deviendera une equation du premier degrés .

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    193
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : Tunisie

    Informations forums :
    Inscription : Août 2006
    Messages : 193
    Par défaut
    Citation Envoyé par diden138
    Tu sais je vais te bombarder de remarque :
    1er -> ou est la gestion des erreurs si l'uilisateur entre une lettre au lieux d'un chiffre.
    2eme-> chose ajoute un readln a la fin de ton programme pour que tu puisse regarder le resultat directement sans réapuyer sur ctrl+F9
    3eme-> chose tu a oublié beacoup de cas possible par exemple si a=0 ton equation du 2eme degré deviendera une equation du premier degrés .
    lol
    salut
    voila l'ennoncé de l'exercice
    résoudre dans IR une equation de second degré de la forme : ax*x*+b*x+c=0 ou a,b et c sont aussi réels
    dans l'exercice que je fait c'est ecrit dans l'ennoncé que a,b,c sont des réels donc normalement si quelqu'un tape une chaine de caractere "string" ou une chaine "char" c'est qu'il n'a pas lu l'ennonce .
    Pour la 2 éme remarque j'utilise turbo pascal version 1.5 qui marche sur windows donc ca sert a rien d'ecrire readln
    pour la 3 éme remarque l'exercice demande de resoudre dans R une equation de second degré et non une equation du 1 er degré
    La forme d'une equation de second degré est : a*x*x+b*x+c=0 telque a et b sont different de 0 (va voir ton livre de math) lol
    c'est un exercice simple et si on complique les choses on sortira jamais

  6. #6
    Membre très actif
    Avatar de diden138
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    714
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2006
    Messages : 714
    Par défaut Re:
    Turbo pascal 1.5 ??? sauf si tu veux dire TPW.

    On te dit de résoudre une équation du deuxième degré dans IR - tu a bien dis IR (ça inclut le zéro) - alors, si l'utilisateur entre la valeur a = 0 ça devient quoi ton équation (1er degré non) ? Si l'utilisateur entre a = b = c = 0... bref il y a du boulot.

    Deuxième chose : on t'a dit de construire un programme qui résout une équation du deuxième degré; l'utilisateur ne va pas lire ton énoncé puis après il va utiliser ton programme...

    Dernière chose : une recherche sur le forum Pascal t'aurait fait gagner du temps car ce sujet a été abordé plusieurs fois.
    Tiens ce lien t'aidera :
    http://www.developpez.net/forums/sho...light=equation

    N'oublie pas le tag résolu

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

Discussions similaires

  1. Equation différentielle second degré
    Par Minimonstre dans le forum MATLAB
    Réponses: 0
    Dernier message: 19/03/2012, 22h04
  2. equation du second degre
    Par Manudeparis dans le forum C
    Réponses: 5
    Dernier message: 06/11/2011, 14h42
  3. [Turbo Pascal] [Débutant] Equation du second degré
    Par MEGA-STORM dans le forum Turbo Pascal
    Réponses: 2
    Dernier message: 28/11/2008, 17h25
  4. [Turbo Pascal] Equation du second degré
    Par Zero_System dans le forum Turbo Pascal
    Réponses: 2
    Dernier message: 13/10/2008, 22h16
  5. Réponses: 6
    Dernier message: 17/11/2007, 13h17

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