Tout d'abord, toute la Team Hackademy vous souhaite une année 2008 pleine de bonnes choses !

Pour débuter cette année, nous sommes heureux de vous annoncer que le Ezine commence à prendre forme (surtout l'équipe qui dirigera celui-ci) et devrait apparaitre sur le Web début Avril. Cela peut paraitre loin mais nous voulons vraiment faire un Ezine de qualité, cela demande donc beaucoup de préparation.

Pour ceux qui aimeraient publier dans le premier numéro il est encore temps d'envoyer vos articles (au pire il seront pour le prochain numéro) directement à redaction@thehackademy.net.

Autre annonce importante, le premier meeting HZV aura lieu le 16 Février 2008 sur Paris (dans les locaux de Sysdream). Celui-ci sera mensuel et aura pour concept de dispenser une formation d'environ 4h sur divers thèmes choisi par la communauté. Le premier thème abordé sera la sécurité VoIP et sera dispensé par CrashFr. Il vous est possible de réserver vos places en formulant votre demande sur meeting@thehackademy.net. Les meeting sont aussi l'occassion pour ceux qui n'auront pas la chance d'assister à la formation de faire des rencontres avec les autres membres de la communauté. Biensur ce meeting est ouvert à tous et gratuit (seul la limite de place disponible peut vous empecher l'accès; alors faites vite !).

Bonne année et n'oubliez pas: HZV will never die !

 FAQ - Rechercher  

pb de php avec boucle for
Aller à la page 1, 2, 3  Suivante
 
The Hackademy Forum Index du Forum -> Programmation Poster un nouveau sujet   Répondre au sujet
Page 1 sur 3
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
kennylafougere



Inscrit le: 30 Oct 2007
Messages: 37

Message Posté le: Lun Fév 25, 2008 1:39 pm  |   Sujet du message: pb de php avec boucle for Répondre en citant
salut a tous

bon sa arrive meme aux meilleurs ^^
je suis bloqué sur un challenge de prog hackquest par une pauvre boucle for :

for($a=3;$a<=(sqrt($p)+1);$a+2){


}

voila le pb est que $a ne s incremente pas et reste a 3 ce qui fait que je tourne en rond dans ma boucle

si quelqu un trouve se qui cloche sa m aiderai beaucoup
merci d avance
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
HacKSpideR



Inscrit le: 19 Juin 2007
Messages: 37

Message Posté le: Lun Fév 25, 2008 6:14 pm  |   Sujet du message: Répondre en citant
J'ai quelque base en php

mais sa ne serai pas sa ? :

for($a=3;$a<=(sqrt($p)+1);$a+=2){


}
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Envoyer l'e-mail
Peel



Inscrit le: 26 Fév 2008
Messages: 23

Message Posté le: Mar Fév 26, 2008 9:13 am  |   Sujet du message: Répondre en citant
si c'est ca.

Soit $a+=2
ou alors $a = $a+2

C'est la meme chose.
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
kennylafougere



Inscrit le: 30 Oct 2007
Messages: 37

Message Posté le: Mar Fév 26, 2008 10:49 am  |   Sujet du message: Répondre en citant
ouai entre temps j ai essayé cette forme aussi mais sa change rien
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
Peel



Inscrit le: 26 Fév 2008
Messages: 23

Message Posté le: Mar Fév 26, 2008 11:02 am  |   Sujet du message: Répondre en citant
Je vais allez faire un tour dans le challenge pour voir le contexte !!
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
Peel



Inscrit le: 26 Fév 2008
Messages: 23

Message Posté le: Mar Fév 26, 2008 11:06 am  |   Sujet du message: Répondre en citant
Je le trouve pas, tu pourrais mettre un peu le code que tu as autour

Surtout à koi est égal $p

Mais faut bien mettre ca : for($a=3;$a<=(sqrt($p)+1);$a+=2)

ton problème doit venir de $a<=(sqrt($p)+1)
tu sais au moins ce ke ca veu dire ?
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
kennylafougere



Inscrit le: 30 Oct 2007
Messages: 37

Message Posté le: Mer Fév 27, 2008 7:12 am  |   Sujet du message: Répondre en citant
donc le nom du challenge : primal fear
mon but etant de faire un genre de brute force pour les nombres premiers
voice un peu plus de code :

$nombres=array(2,3);
$limit=100;
for($p=5;$p<$limit;$p+=2){
$nbprem="true";
for($a=3;$a<=(sqrt($p)+1);$a+=2){
if(($p%$a)==0){
$nbprem="false";
}
}
if($nbprem=="true"){
$nombres[]=$p;
}
}
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
kennylafougere



Inscrit le: 30 Oct 2007
Messages: 37

Message Posté le: Mer Fév 27, 2008 7:24 am  |   Sujet du message: Répondre en citant
bon bah apparament ça remarche
merci tout le monde
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
Peel



Inscrit le: 26 Fév 2008
Messages: 23

Message Posté le: Mer Fév 27, 2008 8:10 am  |   Sujet du message: Répondre en citant
J'ai pas trop chercher à comprendre vu que ca marche mais tu met une limite pour les nombre premier ?? Pourquoi ca ?
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
Apophis1988



Inscrit le: 05 Aoû 2007
Messages: 69

Message Posté le: Mer Fév 27, 2008 8:34 pm  |   Sujet du message: Répondre en citant
Peel a écrit:
J'ai pas trop chercher à comprendre vu que ca marche mais tu met une limite pour les nombre premier ?? Pourquoi ca ?

Parce qu'il veut s'arreter aux nombres premiers avant 100.

Mis à part ça, ton algorithme me parait tres douteux pour trouver des nombres premiers et de plus il me semble que t'as une accolade fermante en trop.
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
Peel



Inscrit le: 26 Fév 2008
Messages: 23

Message Posté le: Jeu Fév 28, 2008 8:27 am  |   Sujet du message: Répondre en citant
Citation:
Parce qu'il veut s'arreter aux nombres premiers avant 100.


Justement, je ne vois pas d'intérêt à limité la recherche des nombre premier !!

Par exemple, 12347

Ben c'est un nombre premier ce qui veu dire que s'il tombe sur ce nombre ben il ne passe pas dutout dans sa boucle
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
Apophis1988



Inscrit le: 05 Aoû 2007
Messages: 69

Message Posté le: Jeu Fév 28, 2008 3:50 pm  |   Sujet du message: Répondre en citant
Je n'ai absolument pas regardé le challenge et donc je pense que s'il s'arrete avant 100, c'est qu'il ne veut que les nombres premiers entre 0 et 100, tu crois pas?
Ensuite, pour ton nombre premier il n'y aucune crainte car il n'y arrivera jamais à ce nombre: la boucle principale s'arretant justement à 100
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
Celelibi



Inscrit le: 29 Mar 2006
Messages: 770

Message Posté le: Jeu Fév 28, 2008 5:07 pm  |   Sujet du message: Répondre en citant
Si le but est d'utiliser les nombres premiers trouvés pour en faire autre chose, on trouve facilement sur le net des listes des nombres premiers.
Si le but est de coder un prog qui les trouve, tu peux t'essayer au crible d'Erathostène qui est assez sympa à programmer. Il présente la meilleur complexité en temps, mais consomme de un espace mémoire en O(n). Ou alors tu peux simplement optimiser ton algo actuel en ne testant la divisibilité que par les nombres premiers actuellement trouvés.
Et puis si y'a des constantes false et true, c'est pas pour utiliser des chaines de caractères qui dans un test valent true. Smile
_________________
Il y a un boulet qui sommeille en chacun de nous. (enfin, surtout vous...)
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
kennylafougere



Inscrit le: 30 Oct 2007
Messages: 37

Message Posté le: Ven Fév 29, 2008 7:45 am  |   Sujet du message: Répondre en citant
bon je vois que sa passionne plein de monde alors voici l enoncé :

Ok get pen and paper.. and do the following....
If you click this here you will receive a number.

1. Calculate all prime numbers counting down from and including this number.
2. Throw away every second prime you get.
3. Take the first digit and the last digit of all the prime numbers left, add them all together.
4. You will get a large number. Factorize that number to primes and add up all the factors.
5. Send it the answer in the format: 'Prime:AddedDigits:AddedFactors'

Example: Number = 17

1. Primes: 17 13 11 7 5 3 2
2. Primes: 17 11 5 2
3. 1+7 + 1+1 + 5+5 + 2+2 = 24
4. 24 (Not that large Razz) = 12 x 2 = 6 x 2 x 2 = 3 x 2 x 2 x 2 -> 3+2+2+2 = 9
5. Answer: 17:24:9

Another example: 31337:13289:234

donc je pensait faire un brute force qui calcul toutes les possibilitées pr les stocker dans un .txt et ensuite un autre prog qui se connecte au challenge et va direct chercher la reponse dans le txt
sachant que leur question est la plus part du temps un chiffre qui tourne autour de 8 000 000
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
Peel



Inscrit le: 26 Fév 2008
Messages: 23

Message Posté le: Ven Fév 29, 2008 10:34 am  |   Sujet du message: Répondre en citant
ou alors tu fait simplement une recherche qui est pas en PHP car tu va faire ralentir tous les serveur et pour probablement ce terminer par une erreur execution_time

Fait le plutot en VB !!
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
Montrer les messages depuis:   
The Hackademy Forum Index du Forum -> Programmation Poster un nouveau sujet   Répondre au sujet
Aller à la page 1, 2, 3  Suivante

 
Sauter vers:  

Powered by phpBB
Theme modified by mOg & CrashFr
Traduction par : phpBB-fr.com