2017-09-30 12 views
0

J'ai besoin d'un algorithme/code/exemple en PHP ou Lua pour générer une série de 64 caractères chaîne hexagonale Respectivement.Générer une chaîne hexadécimale de 64 caractères Respectivement

Comme ceci:

0000000000000000000000000000000000000000000000000000000000000001 
0000000000000000000000000000000000000000000000000000000000000002 
0000000000000000000000000000000000000000000000000000000000000003 
0000000000000000000000000000000000000000000000000000000000000004 
0000000000000000000000000000000000000000000000000000000000000005 
0000000000000000000000000000000000000000000000000000000000000006 
0000000000000000000000000000000000000000000000000000000000000007 
0000000000000000000000000000000000000000000000000000000000000008 
0000000000000000000000000000000000000000000000000000000000000009 
000000000000000000000000000000000000000000000000000000000000000A 
000000000000000000000000000000000000000000000000000000000000000B 
000000000000000000000000000000000000000000000000000000000000000C 
000000000000000000000000000000000000000000000000000000000000000D 
000000000000000000000000000000000000000000000000000000000000000E 
000000000000000000000000000000000000000000000000000000000000000F 
0000000000000000000000000000000000000000000000000000000000000010 
0000000000000000000000000000000000000000000000000000000000000011 
0000000000000000000000000000000000000000000000000000000000000012 
0000000000000000000000000000000000000000000000000000000000000013 
0000000000000000000000000000000000000000000000000000000000000014 
0000000000000000000000000000000000000000000000000000000000000015 
0000000000000000000000000000000000000000000000000000000000000016 
0000000000000000000000000000000000000000000000000000000000000017 
0000000000000000000000000000000000000000000000000000000000000018 
. 
. 
. 
+0

'J'ai écrit ce code dans ...' * Qu'est-ce que * 'ce recueil HSC? Incluez-le dans votre question. (Utilisez un bloc de code pour les blocs de code.Pour l'entrée/sortie, je recommande * des citations de bloc *.) – greybeard

+0

@greybeard Je les ai supprimés. Ce n'est pas nécessaire. – Ayrese

Répondre

2

Utilisez le code de mise en forme hexagonale printf.

for ($i = 1; $i <= 1000; $i++) { 
    printf("%064X\n", $i); 
} 

Format X signifie imprimer hex avec des lettres majuscules. 064 signifie l'imprimer dans un champ de 64 caractères avec des zéros en tête.


De même en lua:

for i=1,1000 do 
    print (string.format("%064X", i)) 
end 
+0

Merci beaucoup @Barmar. J'ai tout oublié à propos de 'printf'. cette fonction est-elle rapide? Parce que je dois générer beaucoup de ce type de chaîne, j'ai besoin d'un moyen de plus en plus rapide. J'ai converti 'for' en' while (true) 'afin de générer toutes les chaînes. Quel est le numéro de fin de cette boucle? – Ayrese

+0

Il n'est pas possible de générer * toutes * des chaînes de 64 chiffres. Il y en a plus de 10^77. Si vous en produisiez un milliard toutes les secondes, il faudrait 3x10^30 ans. – Barmar

+0

Y a-t-il un moyen le plus rapide? Après avoir généré chacune de ces chaînes, je fais quelques calculs puis les comparer avec ma chaîne. Si la chaîne finale est égale à ma chaîne, le script affichera son code HEX. Avez-vous une idée pour accélérer ce processus? – Ayrese