Re-Salut, maintenant que j'ai mis de jolie couleurs à ton code (

) je suis plus apte à le lire et t'y répondre, tout d'abord, je te suggère quelques améliorations:
var va:Number = 0;
var vb:Number = 0;
var vc:Number = 0;
var vdelta:Number = 0;
var xun:Number = 0;
var xunbas:Number = 0;
var xunhaut:Number = 0;
var
eux:Number = 0;
var
euxbas:Number = 0;
var
euxhaut:Number = 0;
var vracine:Number = 0;
valider_btn.onPress = function()
{
va = Number(a_txt.text);
vb = Number(b_txt.text);
vc = Number(c_txt.text);
if(isNaN(va) || isNaN(vb) || isNaN(vc))
{
delta_txt.text = "Veuillez entrer des nombres SVP!";
res1_txt.text = "";
res2_txt.text = "";
}
else if(!va && !vb && !vc)
{
delta_txt.text = "Pas de delta. ";
res1_txt.text = "Équation toujours vérifiée.";
res2_txt.text = "";
}
else if(!va && !vb)
{
delta_txt.text = "Pas de delta. ";
res1_txt.text = "Équation impossible.";
res2_txt.text = "";
}
else if(!va)
{
delta_txt.text = "Pas de delta. ";
res1_txt.text = "Équation du premier degré.";
xun = -vc/vb;
res2_txt.text = "x est égal à " + xun;
}
else
{
vdelta = vb*vb - 4*va*vc;
delta_txt.text = "Le delta est égal à " + vdelta + ".";
if(vdelta > 0)
{
vracine = Math.sqrt(vdelta);
xunbas = 2*va;
euxbas = xunbas;
xunhaut = vracine-vb;
euxhaut = -vb-vracine;
xun = xhaut/xunbas;
eux =
euxhaut/
euxbas;
res1_txt.text = "x1 est égal à " + xunhaut + " / " + xunbas + " , soit " + xun + ".";
res2_txt.text = "x2 est égal à " +
euxhaut + " / " +
euxbas + " , soit " +
eux + ".";
}
else if(vdelta < 0)
{
res1_txt.text = "Aucune solution dans l'ensemble des réels.";
res2_txt.text = "";
}
else
{
euxhaut = -vb;
euxbas = 2*va;
eux =
euxhaut/
euxbas;
res1_txt.text = "x1 et x2 sont confondus.";
res2_txt.text = "x est égal à " +
euxhaut + " / " +
euxbas + " , soit " +
eux + ".";
}
}
};
Je n'ai pas d'interpréteur AS2 sous la main donc je n'ai pas pu vérifier ce code mais il devrait être bon
N'y voit en tout cas aucune critique "malintentionnée", ce que je dis est purement constructif et j'espère que vous ferez de même avec mes scripts ^^
Sinon je te fais une version AS3:
// Supposons va, vb et vc, 3 entiers
var va:int = 0;
var vb:int = 0;
var vc:int = 0;
var vdelta:int = 0;
var xun:Number = 0;
var xunbas:int = 0;
var xunhaut:Number = 0;
var
eux:Number = 0;
var
euxbas:int = 0;
var
euxhaut:Number = 0;
var vracine:Number = 0;
valider_btn.addEventListener(MouseEvent.CLICK, calculerDelta);
function calculerDelta(ev:Event):void
{
if(a_txt.text.test(/[^0-9]/) || b_txt.text.test(/[^0-9]/) || c_txt.text.test(/[^0-9]/))
{
delta_txt.text = "Veuillez entrer des nombres SVP!";
res1_txt.text = "";
res2_txt.text = "";
return;
}
va = int(a_txt.text);
vb = int(b_txt.text);
vc = int(c_txt.text);
if(!va && !vb && !vc)
{
delta_txt.text = "Pas de delta. ";
res1_txt.text = "Équation toujours vérifiée.";
res2_txt.text = "";
}
else if(!va && !vb)
{
delta_txt.text = "Pas de delta. ";
res1_txt.text = "Équation impossible.";
res2_txt.text = "";
}
else if(!va)
{
delta_txt.text = "Pas de delta. ";
res1_txt.text = "Équation du premier degré.";
xun = -vc/vb;
res2_txt.text = "x est égal à " + xun;
}
else
{
vdelta = vb*vb - 4*va*vc;
delta_txt.text = "Le delta est égal à " + vdelta + ".";
if(vdelta > 0)
{
vracine = Math.sqrt(vdelta);
xunbas = 2*va;
euxbas = xunbas;
xunhaut = vracine-vb;
euxhaut = -vb-vracine;
xun = xhaut/xunbas;
eux =
euxhaut/
euxbas;
res1_txt.text = "x1 est égal à " + xunhaut + " / " + xunbas + " , soit " + xun + ".";
res2_txt.text = "x2 est égal à " +
euxhaut + " / " +
euxbas + " , soit " +
eux + ".";
}
else if(vdelta < 0)
{
res1_txt.text = "Aucune solution dans l'ensemble des réels.";
res2_txt.text = "";
}
else
{
euxhaut = -vb;
euxbas = 2*va;
eux =
euxhaut/
euxbas;
res1_txt.text = "x1 et x2 sont confondus.";
res2_txt.text = "x est égal à " +
euxhaut + " / " +
euxbas + " , soit " +
eux + ".";
}
}
};
En gros dans ce cas-ci, ça change pas grand chose visuellement ;D
EDIT: J'ai remplacé
!a_txt.text.test(/^[0-9]+$/)
par
a_txt.text.test(/[^0-9]/)