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

Langage Delphi Discussion :

Code pour utiliser une fonction écrite dans un Edit.


Sujet :

Langage Delphi

  1. #1
    Membre régulier
    Inscrit en
    Mars 2007
    Messages
    205
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 205
    Points : 92
    Points
    92
    Par défaut Code pour utiliser une fonction écrite dans un Edit.
    Voici ce que je ne sais pas faire :

    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
    30
     
     
    var
      Form1: TForm1;
      a,b,c:extended;
      S:string;
     
    implementation
     
    {$R *.DFM}
     
    procedure TForm1.Button1Click(Sender: TObject);
    begin
         a:=strtofloat(Edit1.text);
         b:=strtofloat(Edit2.text);
         S:=Edit3.text;
     
         { Quel code écrire ici pour calculer c
         avec la formule S écrite sous forme de texte dans Edit3
         et qui fait intervenir les données a et b ?
         Par exemple on a entré :
         2.1 dans Edit1,
         1.5 dans Edit2,
         a*sin(b) dans Edit3 .
         Le résultat 2.094739471868515 devrait s'afficher dans Edit4}
     
         Edit4.text:=floattostr(c);
    end;
     
    end.
    Merci par avance pour l'aide.

  2. #2
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 879
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 879
    Points : 11 377
    Points
    11 377
    Billets dans le blog
    6
    Par défaut
    Bonjour, tu trouveras des pistes ici : https://www.developpez.net/forums/d1...-arithmetique/

  3. #3
    Membre régulier
    Inscrit en
    Mars 2007
    Messages
    205
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 205
    Points : 92
    Points
    92
    Par défaut
    Bonjour tourlourou et merci pour la réponse.
    Mais je ne vois toujours pas comment faire.

    Ma question vient d'une simple curiosité : On voit de nombreuses applications qui permettent aux utilisateurs d'entrer une quelconque formule mathématique, qui est utilisée pour tracer une courbe, ou faire un calcul numérique, ou autre... Je me demande comment ceci est programmé.

    Il est certainement possible avec Delphi de créer des applications qui permettent de faire la même chose, c'est à dire telles que l'utilisateur peut dactylographier une formule mathématique directement par l'application (au lieu de passer à nouveau par Delphi pour changer la formule dans le code et devoir créer une nouvelle application).

    Je me demande si cela demande seulement des connaissances élémentaires de Delphi, ou au contraire, si cela fait appel à des moyens beaucoup plus avancés.

  4. #4
    Membre confirmé Avatar de Galet
    Homme Profil pro
    Consultant/Programmeur Robotique industrielle
    Inscrit en
    Mars 2010
    Messages
    323
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant/Programmeur Robotique industrielle

    Informations forums :
    Inscription : Mars 2010
    Messages : 323
    Points : 484
    Points
    484
    Par défaut
    Salut JJJJJ,
    Une piste :http://www.discmath.ulg.ac.be/cours/Interpreteur.pdf
    Ou encore, regarder du côté de tParser de Delphi.
    https://olance.developpez.com/articl...exers-theorie/
    Belle journée

  5. #5
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 202
    Points : 41 443
    Points
    41 443
    Billets dans le blog
    63
    Par défaut
    Bonjour,

    Il y a aussi les possibilités offertes par les livebindings comme effet de bord
    lire ce tutoriel dans lequel j'ai exploré quelques pistes

  6. #6
    Membre régulier
    Inscrit en
    Mars 2007
    Messages
    205
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 205
    Points : 92
    Points
    92
    Par défaut
    Saluts à Galet et SergioMaster,
    Excellent, cela répond à ma curiosité sur ce genre de problèmes. Il faut un "interpréteur de fonctions" ou "évaluateur d'expressions" dont il existe quelques éléments. Ces articles didactiques sont très bien faits. Merci à vous.

  7. #7
    Membre du Club Avatar de hector94
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 56
    Points : 55
    Points
    55

  8. #8
    Membre averti Avatar de franckcl
    Homme Profil pro
    Developpeur Delphi
    Inscrit en
    Septembre 2004
    Messages
    516
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Developpeur Delphi
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Septembre 2004
    Messages : 516
    Points : 443
    Points
    443
    Par défaut
    J'avais développé ça il y a de nombreuses années.

    Je te joins un exemple très simple qui correspond à ce que tu veux.

    Edit1 = constante 1
    Edit2 = constante 2
    Edit3 = Formule qui utilise les constantes 1 et 2 avec gestion des parenthèses, fonctions mathématique etc..

    un bouton qui lance le calcul et affiche le resultat dans un showmessage

    L'unité à ajouter est calcfunc qui ne fait quelques 400 lignes.
    Fichiers attachés Fichiers attachés

  9. #9
    Membre régulier
    Inscrit en
    Mars 2007
    Messages
    205
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 205
    Points : 92
    Points
    92
    Par défaut
    Maintenant je vois très bien de quoi il s'agit. Ma curiosité sur le sujet est satisfaite. Je suis favorablement surpris par ce qui a été fait depuis bien plus longtemps que je ne m'y attendais.
    Merci à tous.

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

Discussions similaires

  1. Comment faire pour utiliser plusieurs fonctions logiques dans une condition ?
    Par arnaudperfect dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 04/11/2010, 11h37
  2. Réponses: 0
    Dernier message: 17/06/2010, 14h22
  3. Aide pour utiliser une fonction dans un "case"
    Par lcoulon dans le forum Débuter
    Réponses: 2
    Dernier message: 15/10/2009, 22h17
  4. Appel à une fonction écrite dans un script
    Par sango85 dans le forum MATLAB
    Réponses: 3
    Dernier message: 12/12/2007, 08h52
  5. Utiliser une fonction excel dans une macro et proprièté range
    Par bebel9313 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 11/08/2007, 14h25

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