salut
le code a pas changé depuis tout ce temps... il est toujours aussi crade, et ne permet toujours pas grand chose...
il pourrait les résoudre des C, sans faire d'approximations...
Il pourrait donner le sommet de la courbe...
Il pourrait donner le tableau de variation
Il pourrait donner la dérivée...
J'ai fais un programme sur calto qui fait tout ça (sauf pour les approximations, mais faudrait que je m'y mette parcequ'en math, les approximations...) donc, en php, tu dois pouvoir faire mieux...
J'ai pas regarde la source parceque je suis sur un systeme que je ne mqitrise pas trop, donc les .zip je sais pas faire, mais tel que je le vois, tu as fait un formulaire qui propose 3 cases avec la valeur de A, celle de B, puis celle de C. Mais le fun serait carrement que tu permettes a la personne de rentrer l'equation elle meme.
En effet, avec (desole clavier qwerty donc je ne sais pas commemt faire les carres, que je representerais donc par (2)) :
$equ[0] qui vaut 36
$equ[1] qui vaut -23
$equ[2] qui vaut 9
Bon c'est surememt optimisable, mais la je fais ca comme ca sans grande inspiration ni moral qui plus est (mais ca, ca retourne de ma vie personnelle).
Bonne chance ^^
le php, c'ets efficace, mais seulement efficace, on a pas a coder des algorythmes de recherche par exemple dans des string, il le fait tout seul, mais faut retennir les fonctions (ce que je fais rarement...)
enfin voila, je suis bien meilleur en logique qu'en mémoire, alors je préfères le C...
Sinon, tu peux, pour les nombres dans C simplifier les racines, ça pourait être interessant, et il afficherais par exemple comme réponse : "4+54i*sqrt(2) et 4-54i*sqrt(2)"
Mais bon sinon tu aurais pu optimiser ou améliorer la portabilité de ton code :
<?php
//Calcul de Delta
$valD= ($valb*$valb)-(4*$vala*$valc);
echo ' Valeur de Delta : ',$valD,'
';
if($valD<0)
{
echo 'L\'équation f(x) n\'a pas de solution';
}
else if($valD ==0)
{
echo 'L\'équation a une seule solution car Delta est égal à 0
';
//Calcul d'une seule solution
$S_1=-$valb/(2*$vala);
echo 'La solution de l\'équation est donc ',$S_1,'
';
}
else if($valD>0)
{
echo 'La solution a deux solutions car delta est supérieur à 0
';
//Calcul des deux solutions
$S_2_1=(-$valb-(sqrt($valD)))/(2*$vala);
$S_2_2=(-$valb+(sqrt($valD)))/(2*$vala);
echo 'Les deux solution de l\'équation sont S=( ',$S_2_1,' ; ',$S_2_2,' )';
}
?>
le code a pas changé depuis tout ce temps... il est toujours aussi crade, et ne permet toujours pas grand chose...
il pourrait les résoudre des C, sans faire d'approximations...
Il pourrait donner le sommet de la courbe...
Il pourrait donner le tableau de variation
Il pourrait donner la dérivée...
J'ai fais un programme sur calto qui fait tout ça (sauf pour les approximations, mais faudrait que je m'y mette parcequ'en math, les approximations...) donc, en php, tu dois pouvoir faire mieux...
En effet, avec (desole clavier qwerty donc je ne sais pas commemt faire les carres, que je representerais donc par (2)) :
$equ = $_POST['equation']; // 36x(2)-23x+9
$to_replace = array ('x(2)', 'x', '+');
$replaced = array (',', ',', '');
$equ = explode(str_replace($to_replace, $replaced, $equ));
et la tu as :
$equ[0] qui vaut 36
$equ[1] qui vaut -23
$equ[2] qui vaut 9
Bon c'est surememt optimisable, mais la je fais ca comme ca sans grande inspiration ni moral qui plus est (mais ca, ca retourne de ma vie personnelle).
Bonne chance ^^