Bonjour a tous,
Je suis une debutante de la programmation PHP. Pour me familiairser avec l'environnement j'utilise le tutoriel de Sylvie Vauthier.
Voila je souhaite ecrire dans un fichier PHP une fonction testant si un nombre est premier ou pas et sur un autre fichier PHP l'utilisateur rentre son nombre et j'affiche a'il est premier ou pas.
Le premier fichier (fonctions.php)
Deuxieme fichier PHP (premiers.php)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33 <?php function premiers ($nombre){ $flag=true; if ($nombre ==2){ $flag=false; } elseif (($nombre >2) && ($nombre%2==0)){ // Nombre pair different de 2 $flag=true; // Nombre impair plus grand que 1 } else{ for ($i=3; $i<$nombre; $i++){ $reste = $nombre%$i; if ($reste == 0){ $flag=true; break; } else{ $flag=false; } } } if ($flag=true){ $verdict = 'n\'est pas premier'; } elseif ($flag=false){ $verdict = 'est premier'; } return $verdict; } ?>
Jutilise Wampserver. Alors en localhost, kan j'entre le nombre 8, j'obtiens : 8 n'est pas premier. Alors je me dis tout va bien. Ensuite je teste et la, j'obtiens une reponse similaire : 5 n'est pas premier.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 <html> <head><title> Determine les Nombres Premiers </title></head> <body> <?php include ('fonctions.php'); ?> <form method ="POST" action ="premiers.php"> Entrez un numbre plus grand que 1: <input type ="integer" name ="num"/> <input type="submit" name="valider" value="OK"/> </form> <?php if (isset($_POST['valider'])){ $nombre=$_POST['num']; $verdict_final=premiers($nombre); echo $nombre.' '.$verdict_final.'.'; } ?> </body> </html>
SVP, pouvez vous me dire quelle erreur ai-je commise?
Merci d'avance.
Billyrose
Partager