Je vous défie ce mois-ci de faire la reproduction de
$base la plus petite et la plus rapide possible. Je sais qu'un précédent défi consistait à faire un convertisseur binaire, mais votre code devra cette fois-ci supporter
35 bases (2 à 36). Vous ne devrez évidemment
pas utiliser $base, les sockets ou toute autre fonction permettant de communiquer avec d'autres applications ou dlls.
Si votre identifieur ne supporte pas une base il sera automatiquement
classé dans les derniers (je tiens à favoriser les codes qui remplicent au mieux leurs fonctions).
Idée de : GsXL : | Code : |
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 :
|
Voici le code que je vais utiliser pour classer les vôtres : deficalcul { ;On récupère juste le nom de l'alias pour $isalias var %alias $remove($gettok($$1-,1,40),$) ;On récupère le nom du fichier où se trouve l'alias var %fichier $isalias(%alias).fname ;On récupère la taille du fichier var %taille $file(%fichier).size ;On stocke le $ticks actif var %ticks $ticks ;On exécute 100x l'ident
var %a 1 while (%a <= 100) { var %tmp $eval($$1-,2) inc %a } ;On calcule la durée de la boucle var %duree $calc($ticks - %ticks)
;Et on affiche tout ça echo -a ----------------------- echo -a Résultat de l'ident : %tmp echo -a Taille : %taille echo -a Durée : %duree ms ;Le '#' est calculé avec la formule suivante : taille du fichier * durée de la bouche echo -a $+(,$chr(35)) : $calc(%taille * %duree) echo -a Plus '#' sera élevé moins vous aurez de chances de gagner... ;Le vainqueur sera déterminé grâce au '#' echo -a ----------------------- } |
Le défi sera clôturé assez tard car beaucoups sont partit en vacances et je serai chez mon père le week-end d'avant.
 |
 |
Règlement |
Doit s'appeler $base2.
Doit fonctionner sous mIRC 6.03.
Doit être le plus légé et le plus rapide possible, tout en restant fonctionnel.
Doit supporter 35 bases (de 2 à 36).
Pas de $base, de sockets ou toute autre fonction permettant de communiquer avec d'autres applications ou dlls.
|
|  |
 |
Nom du script |
Auteur |
Commentaire |
$base2 - Première fois je participe a un défi! |
visionz |
Points forts:
Rapide, légé...
À résolu convenablement les 6 conversions testées.
Points faibles:
Les messages d'erreurs ne sont pas tout à fait comme $base (# + 10000)
Conclusion:
Taille : 249
Durée : 50ms
# : 12450 + 10000 = 22450 |
base2 |
Etalon |
Points forts:
Légé, ± rapide...
À résolu convenablement les 6 conversions testées.
Points faibles:
Les messages d'erreurs ne sont pas tout à fait comme $base (# + 10000)
Conclusion:
Taille : 413
Durée : 70
# : 28910 + 10000 = 38910 |
APwalAddon |
mastersleeper |
Points forts:
Imite bien $base
À résolu convenablement les 6 conversions testées.
Points faibles:
Taille un peu grande, durée moyenne...
Conclusion:
Taille : 747
Durée : 90ms
# : 67230 |
base2 |
aerith |
Points forts:
Légé, rapide...
Points faibles:
N'a réussi qu'une des conversions testées... (+ 10 000 par conversions ratées = + 50 000)
Conclusion:
Taille : 426
Durée : 60ms
# : 25560 + 50 000 = 75560 |