Bonjour ! (Et oui c'est encore moi)

Je suis en train de développer un site pour permettre de calculer des trucs en maths, je commence donc par un truc simple: Les Vecteurs. Tout fonctionne, sauf si le résultat es censé être négatif. Je m'explique:

<form method="post" action="form2.php">
Indiquez les coordonnées de : <br>
A : ( <input type="text" name="xA"/> ; <input type="text" name="yA"/> )<br>
B : ( <input type="text" name="xB"/> ; <input type="text" name="yB"/> )<br><br>
<input type="submit" value="Calculer !"/>
</form>

Ceci est le formulaire. Banal.
La page de traitement:

<?php
    extract($_POST);
?>
<body>
Voici les coordonn?es:<br>
A : ( <?php echo $xA ; ?> ; <?php echo $yA ; ?> )<br>
B : ( <?php echo $xB ; ?> ; <?php echo $yB ; ?> )<br><br><br><br>
Calcul des coordonn?es du vecteur AB : <br><br>
<?php
$vecX = $xB - $xA ;
$vecY = $yB - $yA ;
?>
AB ( <?php if($vecX<0){echo "-".$vecX." ";}else{echo $vecX;} ?>
 ; 
<?php if($vecY<0){echo "-".$vecY." ";}else{echo $vecY;} ?>
)
</body>

Les if servent à afficher un " - " si la variable vecX ou vecY est négative, sauf que ça ne marche pas. Il me rajoute un " - " si je met dans le formulaire des chiffres négatifs.

Exemple:
Je rentre:
A (2;3)
B (4;5)
Cela me donne: AB (2;2) au lieu de : AB (2;-2)

Si je rentre:
A (-2;-3)
B (-4;-5)
Cela me donne: AB ( --2 ; --2 ) au lieu de: AB (-2;-2)

10 réponses


palmer08
Réponse acceptée

Si je me trompe pas, tes if ne serve à rien. Si le calcul est négatif, il mettra le "moins" automatiquement. Si tu test avec un calcul simple du genre 2-3, tu demandes à PHP d'afficher le résultat il mettra -1.

C'est pour ça qu'il te mets --2. Si $vecX vaut -2 et tu lui demande de mettre un "moins" si le résultat est infèrieur à zéro, il te mets obligatoirement --2.

Guilhem
Auteur

Pardon, en effet, dans le premier test je faisais "3-5 = -2" alors que la formule est l'inverse. (Coder le soir c'est pas bon).

Merci :).

Guilhem
Auteur

Ah, et comment faire un trait de fraction ?

Comme ça "/"

Guilhem
Auteur

Non, de ce style:

Beh quoi, celui là "/" sur le pavé numérique !?

Guilhem
Auteur

Je veux afficher un trait horizontal pas : "1/3"

J'ai compris, c'est pas possible.

Guilhem
Auteur

:/. Merci quand même.

<hr />

Normalement ça affiche un trait horizontal je crois