Racine ²

Statut
N'est pas ouverte pour d'autres réponses.
kEr0 a dit:
SUEd a dit:
kEr0 a dit:
ok ok ... Heu now j'ai otre chose ms vraiment plus du php lol

Code:
if($num == integer) {print(' '); }
else { print(' '); }
Ca ne marche pas ... Normal puisque $num est obliger un nbre et INTEGER c du texte ... Dc jamais ca sera "if". Mais je trouve pas comment on fait pour dire : "SI $num EST un ENTIER"

Code:
if($num XXX integer) { print(' '); }
à priori, sans vérifier, je dirais is_int() ou is_integer() :)

donc :
Code:
if (is_int($x)) {
   //bla bla bla
}
else {
   // bla bla bla
}
Un dernier truc... t'as pas envie d'apprendre à chercher de par toi meme ?
on a déjà mis à plusieurs reprises des liens vers d'excellentes FAQ, tuto ou aides sur le PHP :) et là, tes questions sont relativement ultra SIMPLES et tu peux trouver toi meme les réponses très très vite !

Je pense que le but de cette section est surtout d'aider pour des choses un peu moins évidentes ! (tu remarqueras que je te répond quand meme)

Mais à la fin, ca devient lourd de répondre pour des trucs comme ca...

De la doc sur le php :
- http://dev.nexen.net/docs/php/annotee/manuel_tocd.php exemple doc !
- http://dev.nexen.net/docs/php/annotee/indexes.functions.php index complet des fonctions de php

en mettant ces liens, j'ai pu vérifié que is_int et is_integer étaient ce que tu recherchais.
Ben j'ai chercher, et le is_integer j'avais trouver .. Mais j'avais fait ca : if($num is_integer) et ca allait po .. Now j'ai compris ... Ben dsl si ca vous derange ms bon j'm bien apprendre et c po a l'ecole ke je verrai ca de sitot .. Et puis j'trouve les fonctions ms le pb c ke des fois j'les tape mal et dc va po comme ici par ex .. Mci qd mm

pour ce qui est de voir a l'école le php on le voit pas avant la rethos :s

Donc encore 2 ans ^^ vu kon va seulement aller en 5eme MDR
 

Hacko

Elite
pour calculer sois même, rien de plus simple :




oki oki :arrow:
 
1er
OP
K

kEr0

ex membre
SUEd a dit:
kEr0 a dit:
Le code racine ² est fini lol j'ai pris le float
J'avais déjà cru comprendre que tu avais réussi, mais là, je t'expliquais complètement, afin que tu apprennes quelque chose et non simplement que tu reprennes une solution qu'on te donne :)
En effet, tu ne semblais pas comprendre la notation "float sqrt(float x)" alors, je t'expliquais, c'est tout.
Et étant en 4ème sec en math, je suppose que tu n'as pas encore vu les exposants non entiers :)
Enfin, je ne sais plus quand on voit ca :p :p
Moi, quand j'étais en 4ème, c'était la trigonométrie, si je me souviens bien :p :p
Et ouais et now la trigo c 5eme .. PFFFFF

Euh sinan ... J'ai refait le is_int ou is_integer ... ms va po :-(

Tjrs le meme pb :/
 

SUEd

Touriste
kEr0 a dit:
Ben j'ai chercher, et le is_integer j'avais trouver .. Mais j'avais fait ca : if($num is_integer) et ca allait po .. Now j'ai compris ... Ben dsl si ca vous derange ms bon j'm bien apprendre et c po a l'ecole ke je verrai ca de sitot .. Et puis j'trouve les fonctions ms le pb c ke des fois j'les tape mal et dc va po comme ici par ex .. Mci qd mm
oki, bin, alors, regarde ce que j'ai mis tantot, ca te permettra de comprendre l'utilisation de toutes les fonctions :)

Nouvel exemple avec is_integer()

Apparence générale de la fonction :
Code:
bool  is_integer ( mixed   var )
Explications :
- bool : veut dire booléen (un booléen est un type de variables qui a deux positions, "true" ou "fasle" ou encore "1" ou "0", ce qui revient au même). Donc, la fonction va renvoyer un booléen. Donc, soit "true", soit "fasle" :)
- is_integer : c'est le nom de la fonction
- ( ) : ce qu'il va y avoir dans les parenthèses donnera des informations sur les arguments (paramètres) nécessaires dans la fonction. Si les parenthèses sont vides, c'est que la fonction n'a pas besoin d'arguments (paramètres). Les arguments sont séparés par des virgules.
- mixed var : cela signifie que la fonction doit recevoir un argument de type "mixed" et dans la fonction, cet argument sera nommé "var". L'important ici est le type et pas le nom de l'argument. Le "mixed" ici veut dire que l'argument peut-être de n'importe quel type (logique, étant donné que le but de la fonction est justement de savoir s'il est du type "integer" ou non :) ).

voilà, j'espère t'avoir éclairci et/ou appris quelque chose qui pourra t'être utile pour comprendre plus facile l'apparence globale d'une fonction ;)
 
1er
OP
K

kEr0

ex membre
Bon voilà mon code tel qu'il est la mtn ...

Code:
if(is_integer($r2d))
                                      {
                                       print('<i><font color="red">'.$part1.' / '.$a2.'   =   </i></font>');
                                        if(is_integer($x1))
                                                           {
                                                            print('<font color="red"><i><b>'.$x1.'</b></i></font>');
                                                           }
                                        else
                                            {
                                             print('<font color="red"><i><b>X1 n\'est pas un entier mais une fraction.</b></i></font>');
                                            }
                                      }
En suivant tout ce que tu m'a expliquer et dit, je ne vois pas pourquoi c tjrs ELSE pour lui ...
 

SUEd

Touriste
kEr0 a dit:
Euh sinan ... J'ai refait le is_int ou is_integer ... ms va po :-(

Tjrs le meme pb :/
on va dire que ca ne m'étonne qu'à moitié, étant donné que la fonction sqrt, que tu utilises, renvoie un float :)
 
1er
OP
K

kEr0

ex membre
SUEd a dit:
kEr0 a dit:
Euh sinan ... J'ai refait le is_int ou is_integer ... ms va po :-(

Tjrs le meme pb :/
on va dire que ca ne m'étonne qu'à moitié, étant donné que la fonction sqrt, que tu utilises, renvoie un float :)
Ben la j'ai fait avec le POW puisque bon ca permet de faire un nbre illimité d'exposant ..
 

SUEd

Touriste
kEr0 a dit:
Bon voilà mon code tel qu'il est la mtn ...

Code:
if(is_integer($r2d))
                                      {
                                       print('<i><font color="red">'.$part1.' / '.$a2.'   =   </i></font>');
                                        if(is_integer($x1))
                                                           {
                                                            print('<font color="red"><i><b>'.$x1.'</b></i></font>');
                                                           }
                                        else
                                            {
                                             print('<font color="red"><i><b>X1 n\'est pas un entier mais une fraction.</b></i></font>');
                                            }
                                      }
En suivant tout ce que tu m'a expliquer et dit, je ne vois pas pourquoi c tjrs ELSE pour lui ...
la réponse à ta question en dans mon post ci-dessus :) cependant, je serais plutot intéressé par ce qui précède ton if :) et ce, afin de voir ce que contiennent les différentes variables utilisées :)
 
1er
OP
K

kEr0

ex membre
PS POUR TOUT LE MONDE VU UNE DES REMARQUES PRECEDENTE : Non je ne veux pas qu'on me le fasse, mais j'aimerais bien apprendre et si je ne me trompe, un forum est fait pour ca ... Et même en lisant la doc, ou en trouvant la fonction idéale, on ne trouve pas directement comment bien l'utilisé ....... :evil:
 

SUEd

Touriste
kEr0 a dit:
SUEd a dit:
kEr0 a dit:
Euh sinan ... J'ai refait le is_int ou is_integer ... ms va po :-(

Tjrs le meme pb :/
on va dire que ca ne m'étonne qu'à moitié, étant donné que la fonction sqrt, que tu utilises, renvoie un float :)
Ben la j'ai fait avec le POW puisque bon ca permet de faire un nbre illimité d'exposant ..
il faudrait voir la version de PHP que tu utilises car voici l'info sur le pow :
Code:
number  pow ( number   base , number   exp ) 
pow retourne base élevé à la puissance exp . Si possible, pow retourne un integer . 

Si le calcul ne peut être fait, une alerte sera affichée et pow retournera FALSE .

Attention 
En PHP 4.0.6 plus ancien, pow retournait toujours un nombre à virgule flottante ( float ), et n'affichait pas d'alerte. Si le calcul est impossible (racine d'un nombre négatif, par exemple), pow retournait NAN
 
1er
OP
K

kEr0

ex membre
SUEd a dit:
kEr0 a dit:
SUEd a dit:
kEr0 a dit:
Euh sinan ... J'ai refait le is_int ou is_integer ... ms va po :-(

Tjrs le meme pb :/
on va dire que ca ne m'étonne qu'à moitié, étant donné que la fonction sqrt, que tu utilises, renvoie un float :)
Ben la j'ai fait avec le POW puisque bon ca permet de faire un nbre illimité d'exposant ..
il faudrait voir la version de PHP que tu utilises car voici l'info sur le pow :
Code:
number  pow ( number   base , number   exp ) 
pow retourne base élevé à la puissance exp . Si possible, pow retourne un integer . 

Si le calcul ne peut être fait, une alerte sera affichée et pow retournera FALSE .

Attention 
En PHP 4.0.6 plus ancien, pow retournait toujours un nombre à virgule flottante ( float ), et n'affichait pas d'alerte. Si le calcul est impossible (racine d'un nombre négatif, par exemple), pow retournait NAN
Bon oki .. Mais je t'ai tout envoyer par PM
 

Josey Wales

Touriste
je suis en donc 4 dit entierment ta question je te repondrai en plus je pnse que aurra besoind de ta farde cours comprendre ce systéme
 
1er
OP
K

kEr0

ex membre
nico crash a dit:
je suis en donc 4 dit entierment ta question je te repondrai en plus je pnse que aurra besoind de ta farde cours comprendre ce systéme
Tu pourrais réécrire ta phrase pcque j'en comprends rien au sens ... Tu mélange tes mots .
 

SUEd

Touriste
kEr0 a dit:
PS POUR TOUT LE MONDE VU UNE DES REMARQUES PRECEDENTE : Non je ne veux pas qu'on me le fasse, mais j'aimerais bien apprendre et si je ne me trompe, un forum est fait pour ca ... Et même en lisant la doc, ou en trouvant la fonction idéale, on ne trouve pas directement comment bien l'utilisé ....... :evil:
Bin, disons qu'un forum est fait pour aider et non pour que des personnes fassent à ta place ce que tu aurais pu faire :)

Le problème de pas mal de jeunes actuellement est de demander aux autres, au lieu de rechercher par eux-même (je ne parle pas spécialement de toi, je ne vise personne).

Moi, ca ne me dérange pas d'aider (je pense l'avoir bien prouvé sur ce forum, même quand je trouvais la question fort simple) mais parfois, j'aime aussi un peu rappeler aux gens qu'ils ont en mains tout pour trouver la réponse eux-même :)
 

SUEd

Touriste
kEr0 a dit:
SUEd a dit:
il faudrait voir la version de PHP que tu utilises car voici l'info sur le pow :
Code:
number  pow ( number   base , number   exp ) 
pow retourne base élevé à la puissance exp . Si possible, pow retourne un integer . 

Si le calcul ne peut être fait, une alerte sera affichée et pow retournera FALSE .

Attention 
En PHP 4.0.6 plus ancien, pow retournait toujours un nombre à virgule flottante ( float ), et n'affichait pas d'alerte. Si le calcul est impossible (racine d'un nombre négatif, par exemple), pow retournait NAN
Bon oki .. Mais je t'ai tout envoyer par PM
oki, je suis en train de regarder.

crée un fichier test.php qui contient :
Code:
<?
phpinfo()
?>
mets le dans le répertoire de ton site et entre l'adresse du fichier dans IE :)
ca va donner toutes les infos de la config de PHP dont la version (en haut à gauche).
Faudrait d'abord savoir la version, pour savoir d'où peut venir le problème ;)
 
1er
OP
K

kEr0

ex membre
SUEd a dit:
kEr0 a dit:
SUEd a dit:
il faudrait voir la version de PHP que tu utilises car voici l'info sur le pow :
Code:
number  pow ( number   base , number   exp ) 
pow retourne base élevé à la puissance exp . Si possible, pow retourne un integer . 

Si le calcul ne peut être fait, une alerte sera affichée et pow retournera FALSE .

Attention 
En PHP 4.0.6 plus ancien, pow retournait toujours un nombre à virgule flottante ( float ), et n'affichait pas d'alerte. Si le calcul est impossible (racine d'un nombre négatif, par exemple), pow retournait NAN
Bon oki .. Mais je t'ai tout envoyer par PM
oki, je suis en train de regarder.

crée un fichier test.php qui contient :
Code:
<?
phpinfo()
?>
mets le dans le répertoire de ton site et entre l'adresse du fichier dans IE :)
ca va donner toutes les infos de la config de PHP dont la version (en haut à gauche).
Faudrait d'abord savoir la version, pour savoir d'où peut venir le problème ;)
PHP Version 4.2.0

C'est le easyPhp 1.6 ...


Le script en lui même fonctionne, mais j'arrive pas a faire les if qui détecte si la racine est un entier ou pas.

Euh pour etre sur pcque la j'commence a douter de tout ... un nbre a vigule genre 6.5 ds php n'est qd meme pas considérer par comme un entier ??? Pcqu ela on c jms .. :roll:
 

SUEd

Touriste
kEr0 a dit:
Le script en lui même fonctionne, mais j'arrive pas a faire les if qui détecte si la racine est un entier ou pas.

Euh pour etre sur pcque la j'commence a douter de tout ... un nbre a vigule genre 6.5 ds php n'est qd meme pas considérer par comme un entier ??? Pcqu ela on c jms .. :roll:
6.5 est un float
 

SUEd

Touriste
t'es certain que ce ne sont pas les nombres de ton exemple qui sont foireux ?:D :D :D

Bon... débuggage manuel et à l'ancienne !

Fais un "echo" de toutes les variables avant les if :)

echo "delta : ".$delta."<br>";
echo "r2d : ".$r2d."<br>";

etc :) pour voir le contenu des variables :)
 
1er
OP
K

kEr0

ex membre
Y = x² + 2x -3


Voilà tous les echo :


a : 1
b : 2
c : -3
b2 : 4
delta : 16
r2d : 4
-b : -2
part 1 (-b + r2d) : 2
part 2 (-b - r2d) : -6
a2 (2 * a) : 2
x1 (part1 / 2) : 1
x2 (part2 / 2) : -3


Mais je pense que l'on fait soit une mauvaise utilisation des is_X presque aucun ne fonctionne comme ca. Soit la version de php ici ne permet pas l'utilisation de cette fonction. Sinon voicxi toujours ce que me retourne le script même si les réponses données si dessus sont justes.

Delta = B² - 4 . A . C = 16

Delta > 0 -> 2 Racines.

X1 = -B + R²(Delta) / 2 . A = La racine carré n'est pas un entier. --> 4
X2 = -B - R²(Delta) / 2 . A = La racine carré n'est pas un entier. --> 4


C'est tjrs juste, mais avec le if, pour lui 4 n'est pas un entier et donc voilà ...
 

SUEd

Touriste
et ptet un
Code:
echo gettype($r2d);
car c'est bizare, tout ca :p
 
Statut
N'est pas ouverte pour d'autres réponses.
Haut