RESOLVEUR D'EQUATION SECOND DEGRÉ AVEC SOLUTION IRREDUCTIBLE(COMME A L'ECOLE)

ld40 Messages postés 336 Date d'inscription jeudi 30 janvier 2003 Statut Membre Dernière intervention 22 février 2019 - 21 juin 2004 à 20:51
Dauray11 Messages postés 9 Date d'inscription vendredi 4 juin 2004 Statut Membre Dernière intervention 24 septembre 2004 - 31 déc. 2004 à 14:10
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/23877-resolveur-d-equation-second-degre-avec-solution-irreductible-comme-a-l-ecole

Dauray11 Messages postés 9 Date d'inscription vendredi 4 juin 2004 Statut Membre Dernière intervention 24 septembre 2004
31 déc. 2004 à 14:10
1) Oui, je redis, trés trés bien fait! Et j'ai repris ça à ma façon mais avec départs seuls nombres entiers . (comme toi ...lol)
Je débutre en VB et m'appuie encore pas mal sur le Basic, et ça m'ennuie d'avoir l'air de donner un truc!

2) Mais lis mon programme;
"Résolution de l'équation du 2e degré et étude de la courbe ax² +bx +c =y,
moins bien présenté que le tien; le mien est trés "Basic" , il donne aussi les résultats en fractions et les racines irréductibles....
mais il prend aussi les coefficients fractionnaires!
1/3x² + 2/7 x -5 = 0, par exemple.
Et ça demande du travail supplémentaire !
Car à lécole, tu as ça aussi !!! Pas que des entiers dans un problème !

Puis alors pour la racine irréductible, j'ai expliqué, j'ai trouvé un algo en quelques lignes 3 ou 4...Je n'ai pas bien compris le tien; il a l'air parfait, trés bien, mais compliqué pour moi, débutant...LOL (Détail, chacun comme il le sait).
Bonne fin d'année à toi et à tous !
Turbo basic Messages postés 6 Date d'inscription mercredi 12 mai 2004 Statut Membre Dernière intervention 16 février 2005
14 sept. 2004 à 15:54
Ta remarque b = 0 :
Faut gérer les cas particuliers AVANT de lancer les formules, enfin à mon avis; sinon tu t'enfermes dans des trucs pas tristes....tu lis ça AVANT dans l'équation :

Par Exemple : b0; ax² +c 0 ou x² = - c/a
1) b=0 nécessite aussi a <>0 sinon Impossibilité.
(Moi je gère ce 1er cas avec 0x² +0x + c = 0 avec C<>0. écrire Impossibilité : goto Fin
Et aussi : 0x² +0x +0 =0 Indétermination : goto Fin. Car ici c'est Solutions = R, pour tout x . Si tu préfères...C'est déjà ça de dégager...)

2) si -c/a <0 pas de solution, pas de carré négatif !

3)si -c ou c 0 avec a <>0 alors x 0, mais là tu peux sauter ce cas que tu retrouves avec b²-4ac =0-0=0 et
V0 = 0 solution unique x'= x''= 0

4) si -c/a >0 , x² =-c/a donne : x = + - V-c/a =
+- V(-c)/Va =+- (V(-c)*Va )/a = +- V(-ca)/a...à traiter ?
Mais je PENSE que ce cas no 4, tu peux le sauter aussi, car tu le retrouves avec delta = -4ac >0
et x = +- V(-4ac)/2a tes algos le traiteront car ça sortira dans ton résultat de delta, non ?

Maintenant les résumés des manuels posent adifférent de 0. Ben pour moi, non !
Comme tu dois aider un potache, tu acceptes a0 et tu tombes dans bx+c 0 équation du 1er degré ! Faut le rappeler à l'élève , ça ! En plus pas de problème là:
x=-c/b avec b<>0
Sinon si b =0 avec a =0 aussi, tu as éliminé ça au début avec
0x²+0x +c 0 dans l'impossibilité ou S R selon c nul ou non !(Ce que je te dis plus haut !)

Ah!, mais ça fait du boulot, les maths, si on veut essayer de ne pas se faire surprendre... par l'ordi !
Sourire . Mais je peux avoir écrit des bourdes, suis ps exempt...
Continue tes bonnes programmations.
Dauray11 Messages postés 9 Date d'inscription vendredi 4 juin 2004 Statut Membre Dernière intervention 24 septembre 2004
12 sept. 2004 à 20:26
Besoin d'échanges de procédés:

Tout d'abord , je le redis, je trouve ton programme super bien, un des meilleurs du genre et la présentation superbe, avec label, dessin, tout ! Bravo !

Bon je l'avais écrit le 18/8, je voulais trouver aussi, à ma façon, et ouf, c'est fait depuis fin aout :
j'ai donc aussi déposé : "Résolution de l'équation du 2e degré et étude de la courbe ax² +bx +c =y, (j'ai l'obsession graphique, que veux-tu...comme pour mon système à 2 inconuues)
J'ai envie d'échanger concernant ce que j'ai entrevu chez toi, mais pas tout compris, que non !

FOR ME :
J'ai fait tout sur une form1, et en objets : rien ! Mais qq appels InputBox en internes et MsgBox internes. Grâce aux conseils de mon cop Huelce, sans qui j'écrivais jamais une ligne de VB !
>La Raison 1, suis nul en VB, tout le monde le sait dejà...mais plutôt Basic...et c'est vachement plus facile...
>Raison 2, il ya les courbes à tracer ...sur la même feuille...très Basic encore...

> Ceci m'a permis d'entrer les coefficients fractionnaires exacts, tel : 2/9x² +1/7 x +2 = 0 qui sont légions dans les exos. Et ça n'a pas été fait, enfin, j'ai pas vu...

> Pour réduire la racine de delta, pas trop vu comment tu fais, toi, pas bien compris... Moi j'ai fait ainsi après bocou de tatonnements, l'astuce :
1) Vite expédié si delta est un carré, y compris delta =1, expédié aussi delta 2 et 3 en irréductible.

2) Puis j'ai pris un intervalle d, de 2 à max la racine entière par défaut de delta.

>J'ai divisé Delta part les carrés de d, soit d2, donc de 4 à max².

>q2 les quotients obtenus. Si int(q2) q2 alors q3 q2, je prends en mémoire le quotient exact.

>Et la dernière division exacte, q3 a pris la valeur d'un q2 qui n'est plus un carré: C'est la partie irréductible de racine de Delta... Donc la partie carrée est Delta/q3.

Pour la partie réduction des fractions, comme toi j'ai fait l'algo d'Euclide, très Basic lui...LOL. Mais j'ai fait plus compliqué, enfin non, disons plus LONG, en 2 termes distincts:
Soit "redu" la réduction de la racine de delta:
-b/2a et redu/2a en expédiant tous les cas entiers à l'écriture des la solution... Reste pas mal de combinaisons2 à 2 envoyés "basiquement" à des sous-programmes Euclidiens...

>Bon petites remarques avec un zest d'humour :

Tu expédies a= 0 en disant "faut que a soit pas nul! "
Le petit malin !! Hé ! Bien sûr la formule TRUC /2a , on est obligé de refuser la division, mais pas l'examen de la chose...!

Que nenni ! Faut voir selon les cas . Puisque moi j'ai voulu associer le graphique, je peux pas m'en tirer aussi facilement...
0x² +bx + 0 0, te laisse 4x 0, donc x=0 pour toute valeur de b non nul. En plus delta = b²-0 = b² est pas négatif...
Ma courbe devient bx =y et tu constates que ma courbe te trace une belle droite toute rouge passant par O et représentant un fonction linéaire.
Idem avec
0x² +bx + c 0 te laisse bx - c donc x= -c/b et ma courbe prend bx +c = y et te trace un droite fonction affine qui va couper l'axe x'x en -c/b donnant la solution.
La solution est toujours le contact avec x'x....
Bien fait pour moi, j'ai voulu trop zèler avec mon basic rudimentaire, mais qui m'aide en fait...tellement c'est simple ! Dans les vieux pots...on fait la bonne soupe....

Mais bravo encore pour ton programme! Pour TES programmes !
Et Ne va surtout pas croire que je "t'enseigne" qq. chose, c'est plutôt toi qui le pourrait ! Mais j'ai voulu communiquer et...sourire un peu...Qd même, ce que je dis n'est pas sot ?
RD
Dauray11 Messages postés 9 Date d'inscription vendredi 4 juin 2004 Statut Membre Dernière intervention 24 septembre 2004
18 août 2004 à 10:13
Bravo pour l'équation du 2e degré, super!
Enfin solution donnée sous forme exacte irréductible, aVm/2a, les valeurs approchées n'étant pas aceptées au collège et au lycée...
Ce que je cherche à faire, mais pas ainsi, plutôt Basic; je ne manipule pas les objets VB : n'ai pas compris comment ils s'articulent...Mais sur une Form1 unique comme tout ce que je fais et qq appels de InputBox en interne .
Je pense avec la décomposition de Delta en facteurs premiers et des compteurs, comparer les diviseurs , extraire les couples tels : if Di D2 Then D1 x D2 D1, mais c'est vague encore ! Pas épluché ton code encore, trop objets VB et labels à gogo !
PS:
j'ai mis des sources qui fonctionnent TB chez moi en VB6 pro: systèmes à 2 inconnues et graphique, décompositio, etc...J'aimerais savoir si ça tourne aussi sur les ai utres PC: aucune réponse ! ???
Encore bravo, je mets 9 car il doit bien rester qq bugs...
cs_akzo Messages postés 133 Date d'inscription dimanche 23 juin 2002 Statut Membre Dernière intervention 3 janvier 2015 3
22 juin 2004 à 06:27
ok vu pour le -x si tu note -1 c'est ok ,sinon dans le source j'ai indique jusqu'a 4 chiffres c'est juste pour montrer comment faire un affichage en bidouillant un peu ici l'idée etais de resoudre l'affichage des fractions et de la racine mon choix j'ai fait des pictures
sinon pour ta remarque des signes je jetterais un oeil dessus j'ai aussi un autre souci j'ai pas gerrer si b=0 au niveau du resultat lol
(j'ai -0+sqr(X) par exemple)
cs_Urgo Messages postés 780 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 16 avril 2009 1
22 juin 2004 à 00:57
No comment lol
ld40 Messages postés 336 Date d'inscription jeudi 30 janvier 2003 Statut Membre Dernière intervention 22 février 2019 1
21 juin 2004 à 20:51
tiens, pour m'amuser je me suis amusé avec ton appli,

j'ai trouvé deux defauts:

-X² + 79X +999 = 0 donne un resultat illisible (evidemment)

la succesion de deux signes (-- ou ++ ou -+ ou +-) fait planter le script

tu veras qu'un jour grace aux complexes tu pourras résoudre X²+1=0, patience ;-)
Rejoignez-nous