Bonjour,
J'ai transformé mon mac en super calculateur, je ne sais pas si vou connaissez cette suite :
1. 1
2. 11
3. 21
4. 1211
5. 111221
6. 312211
7. [...]
En gros, il suffit de lire la ligne précédente, pour générer la suivante.
Jusque a maintenant, j'utilisais PHP pour effectuer le calcul. Mais PHP devient vite lent (ce qui est normal, vu que c'est pas fais pour)
Quelques statistiques, Mon Mac a généré la 55éme ligne en 15 heures, elle compte près de 13000000 de chiffres. J'ai abandonné la 56 après plus de 24 heures de calcul intensif.
Voici le code PHP (c'est pas très propre...)
Ce que j'aimerais faire, c'est convertir ce code PHP en Script Perl, pour essayer d'aller plus loin.
Merci pour votre aide,
Si quelqu'un peut m'aider...
J'ai transformé mon mac en super calculateur, je ne sais pas si vou connaissez cette suite :
1. 1
2. 11
3. 21
4. 1211
5. 111221
6. 312211
7. [...]
En gros, il suffit de lire la ligne précédente, pour générer la suivante.
Jusque a maintenant, j'utilisais PHP pour effectuer le calcul. Mais PHP devient vite lent (ce qui est normal, vu que c'est pas fais pour)
Quelques statistiques, Mon Mac a généré la 55éme ligne en 15 heures, elle compte près de 13000000 de chiffres. J'ai abandonné la 56 après plus de 24 heures de calcul intensif.
Voici le code PHP (c'est pas très propre...)
Bloc de code:
$tab=file($file);
$var = $tab[0]; //On obtient la ligne précedente
while (strlen($var) > 0){ // tant qu'il reste de chiffre a compter, on continue
if($var[0] == $var[1]){ // Début de la méthode : Si le premier chifffre est égal eu deuxieme
if($var[0] == $var[2]){ // Le premier eu troisième
$subnbr = '3';
$var2 = $var2 . $subnbr . $var[0]; //On sauvgarde : Le nombre de fois que la lettre est présente + la lettre
}
else
{
$subnbr = '2';
$var2 = $var2 . $subnbr . $var[0];
}
}
else
{
$subnbr = '1';
$var2 = $var2 . $subnbr . $var[0];
}
$var = substr($var, $subnbr);
}
$var = $var2;
$var2 = '';
$line++;
//Et a la fin on sauvegarde dans un fichier .txt
Ce que j'aimerais faire, c'est convertir ce code PHP en Script Perl, pour essayer d'aller plus loin.
Merci pour votre aide,
Si quelqu'un peut m'aider...