TRINOME DU SECOND DEGRES

Utilisateur anonyme - 21 août 2005 à 22:01
yvessimon Messages postés 637 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 9 janvier 2017 - 23 août 2005 à 08:34
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/33366-trinome-du-second-degres

yvessimon Messages postés 637 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 9 janvier 2017
23 août 2005 à 08:34
pour ne rentrer que des valeurs numérique dans chacun des événements onKeyPress des edit met le code
procedure TfmTrinome.donnee1KeyPress(Sender: TObject; var Key: Char);
begin
// SEULE LES CHIFFRES 0 à 9 et les caractères ,.-
// #8 POUR POUVOIR EFFACER
// decimalseparator LE S2PARATEUR DECIMAL DU SYSTEME
if pos(key,'0123456789,.-'#8+decimalseparator )=0 then key :=#0;
// CELON LA FRAPPE DE . ou , c'est decimalseparator qui est pris en compte
if pos(key, ',.') <>0 then key := decimalseparator;
// LE decimalseparator n'est accepté qu'une seule fois
if (key=decimalseparator ) and ( pos(decimalseparator, donnee1.Text) <> 0 ) then key :=#0;
// LE SIGNE - n'est accepté qu'au début
if ( donnee1.SelStart<>0) and (key='-') then key :=#0;

end;

remarque
les quantités à calculer sont
signe(Delta)
-b /(2a)
sqrt( abs(Delta) ) /(2a)

suivant le signe de delta on ajoute ou non ...
Nitruk Messages postés 128 Date d'inscription lundi 8 août 2005 Statut Membre Dernière intervention 20 juillet 2009
23 août 2005 à 00:35
Je préfère mettre l'exe pour que les membres de CodeS-SourceS qui ne programment pas en Pascal Objet puissent bénéficier du programme, meme si le code source ne leur est d'aucune utilité.
yvessimon Messages postés 637 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 9 janvier 2017
22 août 2005 à 17:17
Tous est dans la representation des nombre complexes en langage informatique.

La résolution avec delta négatif se fait en séparant les parties réelles et imaginaires.
en untilisant une tabl[0..1 , 0..1] il est possible de ranger les solutions telque:

La partie réelle est mise dans une table[0,0] et table[1,0] et la partie imaginaire dans le table[0,1]et table[1,1] . Table[0,1] contient la racine carré de la valeur absolue. comme il y a 2 racines imaginaires l'une est positive l'autre négative,Table[1,1]=-Table[0,1].

si delta est positif ou nul alors la partie imaginaire est nule d'ou Table[1,1]=-Table[0,1]= 0. et les solutions sont dans Table[0,0] et Table[1,0].

est-ce claire ...

Il existe des programmes avec des nombres complexe..somme multiplication ... pour cela on utilise des vecteurs ou tables ou alors des variants

Voir des exmples sur le site DELPHI

en modifiant légérement la formule de " CptPingu "

on a
-> (-b /(2a) + i*Rac( |Delta| ) ) /(2a)
-> (-b /(2a) - i*Rac( |Delta| ) ) /(2a)


Pour visualiser les solutions alors on visualise la partie réelle puis imaginaire.

Bon courage

Pour info x^4 + a.x^3 + b.x^2 + c.x + d =0
a des solutions avec des racines carré et cubique.

pour x^5 et plus alors c'est autre chose
Utilisateur anonyme
21 août 2005 à 22:01
1_Tu ne met pas le .exe, on compilera ton programme.
2_Tu ne met pas les fichiers suivants: .~dfm, .dof, .~pas, .cfg
3_Pas besoin de copier tout ton code dans la fenetre source. Tu ne colle que le principe que tu veu illustrer
4_Pour resoudre un polynome négatif: Delta<0 2 solution:
Soit: ax²+bx+c
Les solutions sont:
-> (-b-(i*Rac(-Delta)))/(2a)
-> (-b+(i*Rac(-Delta)))/(2a)

Avec I=Rac(-1)
Rejoignez-nous