cs_EBArtSoft
Messages postés4525Date d'inscriptiondimanche 29 septembre 2002StatutModérateurDernière intervention22 avril 20199 19 janv. 2008 à 13:10
US_30> Ouai mais pour dire la verité : le fond ne m'interresse pas :p
Bonne prog
@+
us_30
Messages postés2065Date d'inscriptionlundi 11 avril 2005StatutMembreDernière intervention14 mars 201610 19 janv. 2008 à 09:37
Oui, je n'avais pas songé à utiliser Split. Je vais le mettre à jour avec. Mais cela ne change rien au fond. Et si vous avez des idées pour généraliser la résolution, je suis preneur...
Amicalement,
Us.
cs_EBArtSoft
Messages postés4525Date d'inscriptiondimanche 29 septembre 2002StatutModérateurDernière intervention22 avril 20199 19 janv. 2008 à 01:55
US_30> Depuis quand VB force t'il les programmeur a ecrire tel ou tel chose ? si array ne convient pas utilise split et le tour est joué au lieu de :
Dim X() As Variant
X = Array("a","b","c")
Ecris :
Dim X() As String
X = Split("a,b,c")
Ce sera peut etre plus lent a l'appel de split() mais ce qui compte c'est le traitmeent des données du tableau X() et la tu peux gratter !
@+
us_30
Messages postés2065Date d'inscriptionlundi 11 avril 2005StatutMembreDernière intervention14 mars 201610 18 janv. 2008 à 19:00
Voilà EARTSOFT ! Comme je l'ai dit plus haut, je l'avais commencé sans Variant, mais en voulant simplifier l'écriture avec "Array", on se trouve obligé de passer en variant pour l'appel à la fonction... C'est donc, un peu moins léger à la lecture, mais bon...
Tu me pardonneras, dans la partie 'vérification' d'avoir laissé en Variant, mais cela n'a aucune conséquence ici pour l'exécution.
Amicalement,
Us.
cs_EBArtSoft
Messages postés4525Date d'inscriptiondimanche 29 septembre 2002StatutModérateurDernière intervention22 avril 20199 18 janv. 2008 à 08:27
US_30> Le variant, une question de presentation ??? haha ouai remarque c'est sur que si tu le vois comme ça faut pas chercher plus loin ! Le projet est surement trop peu avancé (dans le sens trop recent) pour que tu t'interresses a ça mais tu y viendras c'est sur.
@+
us_30
Messages postés2065Date d'inscriptionlundi 11 avril 2005StatutMembreDernière intervention14 mars 201610 17 janv. 2008 à 22:28
Bonsoir Jack,
Eurekâ ? je ne conais pas... et le bon vieux temps ? ben... si... j'ai 107 ans, alors tu penses !... -:);
N'empêche si tu as le code (d'Eureka) ou un code approchant, je suis preneur... ou même une autre façon de faire... A noter, que je n'ai jamais vu d'équivalent sur VBF... mais c'est vrai que VBF devient vaste aussi... De plus, l'interêt est énorme, du moins dans ce quoi je suis en tain de traiter... et les transpositions pour d'autres programmes ouvrent sûrement des grandes possibilités de simplifications...
Néanmoins, comme déjà dit, les équations doivent être à tiroir. C'est donc une restriction, pas trop forte, mais tout même... et j'aimerai pouvoir généraliser ce code pour tout type d'équation.
A tiroir, cela veut dire qu'on peut toujours résoudre une équation à partir d'une seule variable. Cette variable pouvant être défini par une équation (par exemple polynômiale)... donc, par exemple si on a le système suivant : (simple, juste pour illustrer)
1) y²+y+2 = x²-3x+1
2) x^3 = x²+x+1
on pourra le résoudre avec le code proposé, car grâce à 2), on trouve une valeur à x, puis grâce à 1), on trouve y... (je n'évoque pas ici la multiplicité des solutions)
La généralisation serait de pouvoir résoudre le système suivant (pas à tiroir) :
1) y²+y+2 = x²-3x+1
2) y+x^3 = x²+x+1
Ici, à la main, il faut faire des subtitution d'une équation dans une autre, avant de revenir au cas précédent à tiroir.
Le problème étant de trouver un algorithme numérique... Eurekâ ou lol... je suis preneur pour de bonnes idées sur le sujet...
=
Pour le Variant, c'est pas obligé de le garder comme cela... JE l'avais typé avant en String, Boolean, etc, mais l'utilisation de "Array" rend impossible de se passer du Variant. Mais ce n'est qu'une histoire de présentation en réalité...
=
Amicalement,
Us.
cs_EBArtSoft
Messages postés4525Date d'inscriptiondimanche 29 septembre 2002StatutModérateurDernière intervention22 avril 20199 17 janv. 2008 à 21:51
Domage que ça sente un peu trop fort le variant a mon gout :p
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 17 janv. 2008 à 21:17
lol, ça me rappelle le bon vieux temps où j'utilisais un tout petit programme du nom de Eureka (X86 16 bits) qui faisait la recherche des paramètres à partir d'équations et/ou de contraintes ...
us_30
Messages postés2065Date d'inscriptionlundi 11 avril 2005StatutMembreDernière intervention14 mars 201610 15 janv. 2008 à 00:20
Bonsoir,
> Madm@TT, non, non c'est pas qu'une impression... (je plaisante) -:); Merci.
> Moraissilva, "Evaluate" est une fonction du VBA et est inconnue sous VB6... Il me semble que la seule solution, c'est de programmer un interprêtateur d'expression mathématique... Il n'y en a quelqu'uns sur VBF pas trop mal (je pense à ViolentKen) et le snippets d'EBArtSoft ici http://www.codyx.org/snippet_calculer-expression-simple_63.aspx qui conviendra de complèter...
Amicalement,
Us.
moraissilva
Messages postés14Date d'inscriptionmardi 28 mars 2006StatutMembreDernière intervention20 février 2014 14 janv. 2008 à 11:16
Error message: Evaluate - sub or function not defined...
Help.
MadM@tt
Messages postés2167Date d'inscriptionmardi 11 novembre 2003StatutMembreDernière intervention16 juillet 20091 14 janv. 2008 à 01:01
Le principe est très intéressant, bravo pour toutes ces explications. J'ai l'impression de me coucher moins bete ce soir ^^
19 janv. 2008 à 13:10
Bonne prog
@+
19 janv. 2008 à 09:37
Amicalement,
Us.
19 janv. 2008 à 01:55
Dim X() As Variant
X = Array("a","b","c")
Ecris :
Dim X() As String
X = Split("a,b,c")
Ce sera peut etre plus lent a l'appel de split() mais ce qui compte c'est le traitmeent des données du tableau X() et la tu peux gratter !
@+
18 janv. 2008 à 19:00
Tu me pardonneras, dans la partie 'vérification' d'avoir laissé en Variant, mais cela n'a aucune conséquence ici pour l'exécution.
Amicalement,
Us.
18 janv. 2008 à 08:27
@+
17 janv. 2008 à 22:28
Eurekâ ? je ne conais pas... et le bon vieux temps ? ben... si... j'ai 107 ans, alors tu penses !... -:);
N'empêche si tu as le code (d'Eureka) ou un code approchant, je suis preneur... ou même une autre façon de faire... A noter, que je n'ai jamais vu d'équivalent sur VBF... mais c'est vrai que VBF devient vaste aussi... De plus, l'interêt est énorme, du moins dans ce quoi je suis en tain de traiter... et les transpositions pour d'autres programmes ouvrent sûrement des grandes possibilités de simplifications...
Néanmoins, comme déjà dit, les équations doivent être à tiroir. C'est donc une restriction, pas trop forte, mais tout même... et j'aimerai pouvoir généraliser ce code pour tout type d'équation.
A tiroir, cela veut dire qu'on peut toujours résoudre une équation à partir d'une seule variable. Cette variable pouvant être défini par une équation (par exemple polynômiale)... donc, par exemple si on a le système suivant : (simple, juste pour illustrer)
1) y²+y+2 = x²-3x+1
2) x^3 = x²+x+1
on pourra le résoudre avec le code proposé, car grâce à 2), on trouve une valeur à x, puis grâce à 1), on trouve y... (je n'évoque pas ici la multiplicité des solutions)
La généralisation serait de pouvoir résoudre le système suivant (pas à tiroir) :
1) y²+y+2 = x²-3x+1
2) y+x^3 = x²+x+1
Ici, à la main, il faut faire des subtitution d'une équation dans une autre, avant de revenir au cas précédent à tiroir.
Le problème étant de trouver un algorithme numérique... Eurekâ ou lol... je suis preneur pour de bonnes idées sur le sujet...
=
Pour le Variant, c'est pas obligé de le garder comme cela... JE l'avais typé avant en String, Boolean, etc, mais l'utilisation de "Array" rend impossible de se passer du Variant. Mais ce n'est qu'une histoire de présentation en réalité...
=
Amicalement,
Us.
17 janv. 2008 à 21:51
17 janv. 2008 à 21:17
15 janv. 2008 à 00:20
> Madm@TT, non, non c'est pas qu'une impression... (je plaisante) -:); Merci.
> Moraissilva, "Evaluate" est une fonction du VBA et est inconnue sous VB6... Il me semble que la seule solution, c'est de programmer un interprêtateur d'expression mathématique... Il n'y en a quelqu'uns sur VBF pas trop mal (je pense à ViolentKen) et le snippets d'EBArtSoft ici http://www.codyx.org/snippet_calculer-expression-simple_63.aspx qui conviendra de complèter...
Amicalement,
Us.
14 janv. 2008 à 11:16
Help.
14 janv. 2008 à 01:01