Accueil > Forum > > > > tracer une function en java
tracer une function en java
mercredi 1 décembre 2004 à 22:04:58 |
tracer une function en java

herve_blondel
|
salut a tous ! je suis entrain d'ecrire un programme pour tracer les courbes en java. quelqu'un a-t-il une idée de comment recuperer dans le programme une fonction entrée dans un JTextfield ? par exemple f(x)=log(x)+2*exp(x^2-3x). pour le moment,j'entre la fonction dans le programme.
|
|
vendredi 3 décembre 2004 à 19:01:17 |
Re : tracer une function en java

Minhounet
|
Je crains pour toi qu'il va falloir faire du lexing et du parsing. Il va donc falloir créer un objet que tu appelleras "Expression" et définir ce que c'est. Il s'agit donc d'abord de définir une grammaire des expressions arithmétiques.
Grosso modo et sans être vraiment juste (la grammaire et moi c'est pas le grand amour)
E = Cte E = E + P
etc.. donc E est une expression arithmétique, E peut être une constante, ou une somme, ou un produit etc.. Je te conseille de chercher sur internet une grammaire NON AMBIGUE des expressions arithmétiques.
Le lexing consiste à lire ce qu'il y a dans le JTextField et de voir si les termes utilisées existent. Le parsing consiste à reconnaître la syntaxe, en gros "est ce une expression arithmétique ?".
bonne chance
|
|
dimanche 5 décembre 2004 à 12:20:14 |
Re : tracer une function en java

herve_blondel
|
merci pour ta reponse. je connais pas la grammaire mais je vais suivre ton conseil et chercher sur internet. en gros, ce que je voudrais faire c'est recupere une fonction a tracer a partir d'un JTextfield. je veux dire que l'utilisateur entre par exemple x^2+5 et le programme recupere cette donnée et trace la courbe. Pour le moment, le programme trace la courbe mais seulement, il faut ecrire la fonction dans le code a chaque fois qu'on change de fonction et recompiler puis executer: c'est pas pratique. dans le programme j'ai fais ceci: par exemple pour y=cosx+3x^2 y=Math.cos(x)+(3*Math.pow(x,2)); je voudrais donc trouver un moyen de faire cela sans plus intervenir dans le code a chaque changement de fonction a tracer. merci. 
|
|
lundi 6 décembre 2004 à 01:44:15 |
Re : tracer une function en java

Minhounet
|
Je comprends bien ce que tu veux faire, mais je n'ai pas encore vu en java de classe java qui permet de lire une chaine de caractères représentant une fonction pour la transformer en une suite de lignes de codes pour tracer ensuite. Il te faudra absolument faire le travail toi même à savoir lire la chaine et reconnaitre à l'aide d'une grammaire que c'est bien une fonction.
Genre ne pas accepter x+++5 qui n'est pas une fonction. Et après ce n'est pas le plus facile, il va falloir évaluer ce que la personne a écrit.
Par exemple une fonction du genre "cos(x+5)" devra être interprété en Math.cos(x+5).
Sans compter que tu devras avoir reconnu que x est une variable aussi.
Pour résumer, 3 étapes : - analyse lexicale (ce que j'ai écrit existe t - il ? les mots utilisés existe t-il ? Par exemple "?" n'existe pas dans les fonctions) - analyse syntaxique (ce que j'ai écrit correspont - il à une fonction ? Ce n'est pas évident à écrire) - evaluation (il s'agira de faire la transformation entre ce que j'ai écrit et ce qui devra être calculé : cos(2) est en fait Math.cos(2), la chaine de caractères "2" est la constante 2 etc..)
C'est donc loin d'être quelque chose de simple, donc veux tu vraiment t'y lancer ? Note que lorsque tu compiles avec javac, il analyse d'abord pour voir si tu emploies des mots qui existent, voit si tu as bien utilisé la syntaxe demandé, voit si tes variables sont bien initialisées etc.. (analyse sémantique) et ensuite seulement transforme ton code en code intermédiaire.
Je fais actuellement un projet de compilation de C en CAML et c'est loin d'être simple.
Documente toi sur l'analyse lexicale, syntaxique ça sera un bon début. bonne chance :)
Si Java bien, c'est Java Minh !
|
|
mardi 7 décembre 2004 à 12:24:12 |
Re : tracer une function en java

herve_blondel
|
merci bcp. pour le moment, c'est vraiment compliqué pour moi.Je vais placer ce programme en standby et me documenter d'abord . 
|
|
Cette discussion est classée dans : fonction, java, programme, function, tracer
Répondre à ce message
Sujets en rapport avec ce message
lanct prog VB dans prog JAVA [ par deju ]
Bonjour.J'aimerais lancer un programme Visual Basic a partir d'un programme JAVA, comment faire??
convert vba en java [ par alizecha ]
Bonjour à tousJ'ai fait un programme sous excel97 et vba. Ce programme utilise des feuilles pour le stockage et le calcul automatique de variables, un
Definition d'expression mathematique lors de l'execution [ par progueur ]
Bonsoir,Je suis en train de reflechir a une application java quipermettrait de tracer des fonctions.Et j'aimerais pouvoir definir la fonction a tracer
executer un exe (source C++) avec du java [ par zebulaon ]
Bonjour,Je voudrais savoir comment on peut interfacer un programme C++ avec du java.Je dispose des sources d'un prog ecrit en C++ et j'aurai besoin de
java, JNI et DLL [ par Milie ]
Bonjour, je vous écris pour un pb de chargement de DLL. J'ai déja fait un tutorial avec JNI de type HelloWorld mais j'ai à present besoin d'intergrer
Recherche fonction dans l'API DOM de Java [ par minime ]
Salut, voila mon problème, en Java pour insèrer un élément de type String dans un document DOM, il y a la fonction 'createTextNode(String)'. Mais si o
mettre du son dans un programme java [ par neopascal ]
Je voudrais savoir comment faire pour lire un fichier son dans un programme java.
Optimisation d'un programme JAVA [ par karim1758 ]
Salut,Je cherche quelqu'un qui pourrai m'aider à optimiser un programme JAVA qui me semble un peu lourd au niveau des lignes de code car je suis un dé
Arbre binaire java [ par frances ]
J'étude au Portugal. Je doit faire un programme em JAVA d'arbres binaires qui demande a l'utilizateur s'il veux ajouter ou suprimmer une donnée et que
Ouvrir un executable dans un programme JAVA [ par lbg5941 ]
J'aimerai lancer un executable lorsque j'appuie sur un bouton de mon application. Je n'arrive pas à trouver comment le faire. Merci de votre aide
Livres en rapport
|
Derniers Blogs
[HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE)[HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE) par Gio
Je m'y prends un peu tard je sais, mais bon je suis développeur web et donc hyper fainéant ! Toujours dans le cadre des technologies émergentes, ici HTML5, parce qu'on aime HTML5 chez Wyg , nous seront présent, le vieux ( Aurélien V.) et moi, pour pr...
Cliquez pour lire la suite de l'article par Gio [WP7] DYNAMICALLY CHANGE STARTUP PAGE[WP7] DYNAMICALLY CHANGE STARTUP PAGE par KooKiz
Let's say that you want to allow the user to customize the startup page of your application. You can easily change the startup page by editing the 'NavigationPage' attribute in the manifest file. But the manifest cannot be modified once the applicatio...
Cliquez pour lire la suite de l'article par KooKiz SESSION SILVERLIGHT 5 3D : SLIDES ET DEMOSSESSION SILVERLIGHT 5 3D : SLIDES ET DEMOS par Groc
Durant les techdays, j'ai eu le plaisir d'animer une session sur Silverlight 5 et la 3D avec Simon Ferquel. Comme promis, voici nos slides et mes démos (celles avec le viper BSG) ici et là. Pour mémoire, les démos utilisent toutes le viper BSG...
Cliquez pour lire la suite de l'article par Groc [TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES[TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES par gpommier
Suite à la session que j'ai présenté sur WebMatrix 2, vous pouvez trouver les slides ici, ainsi que les démos en packages nuget : démos1 et démos2 J'en profite pour remercier chaleureusement tous ceux qui sont venus très nombreux à cette sess...
Cliquez pour lire la suite de l'article par gpommier
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|