Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1883 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  random chiffre, lettre, caractère spéciaux

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

random chiffre, lettre, caractère spéciaux

n°2193194
vort
Posté le 06-06-2013 à 17:11:24  profilanswer
 

Salut à tous.
 
Je viens vers vous pour une question qui peut être plutôt intéressante pour nombreuses personnes.
 
Je souhaiterais faire un système de randomisation (ouh ! qu'elle grand mot) mais randomisation non aléatoire, comme une séquence. :
a
b
c
d
e
f
g
 
etc, bien sur, je voudrais que ce système fasse aussi passe au majuscule et ensuite caractère spéciaux.
 
Ce système est finalement simple à codé, on peut facilement le faire avec des variables par exemple :
1 = a
2 = b
3 = c  
 
et faire ensuite une boucle assez surprenante (avec un bout de code ajax derrière). Mais voilà, je voudrais allez plus loin :
lorsque cette boucle est faîtes, je voudrais qu'un deuxième caractère apparaisse et donc je repartirai au début :
aa
ab
ac
...
ba
bb
bc
...
ca
cb
ca
...
 
ainsi de suite. Est-ce que vous voyez où je veux en venir ? Je ne pense pas que ce soit bien compliqué à mettre en place, encore faut-il y arriver (ou alors le faire avec un système js).
 
Encore merci de votre aide.


---------------
Dév amateur : eternity-online-game.net (en cours de codage)
mood
Publicité
Posté le 06-06-2013 à 17:11:24  profilanswer
 

n°2193195
Volkhen
Posté le 06-06-2013 à 17:17:09  profilanswer
 
n°2193196
vort
Posté le 06-06-2013 à 17:20:19  profilanswer
 

Ce n'est pas le système que je cherche à faire, mais merci tout de même de ton aide


---------------
Dév amateur : eternity-online-game.net (en cours de codage)
n°2193197
Volkhen
Posté le 06-06-2013 à 17:20:58  profilanswer
 

vort a écrit :

Ce n'est pas le système que je cherche à faire, mais merci tout de même de ton aide


Un tableau, une boucle, array_rand et ton truc est codé.


---------------
Main/Alt1/Alt2/Alt3
n°2193198
vort
Posté le 06-06-2013 à 17:24:08  profilanswer
 

C'est bien compliqué que ça, je ne pense pas que tu ai compris. Faire un tableau pour y mettre mes caractères, d'accord. Une boucle, obligé. Mais je ne veux pas de rand à proprement parlé.
C'est con ce que je veux faire, mais je veux qu'il me fasse comme une liste : d'abord ma lettre a, ensuite ma lettre b etc. Quand il arrive à la z, je veux qu'une deuxième lettre se rajoute donc ça ferait aa, ab etc. quand c'est à az, ça devrait faire ba, bc, etc etc


---------------
Dév amateur : eternity-online-game.net (en cours de codage)
n°2193204
Volkhen
Posté le 06-06-2013 à 17:52:33  profilanswer
 

Bon aller, une fonction récursive et un array_slice en plus et c'est dans le sac  [:bobbyfrasier:4]  
 
Mais vu que ça sent l'exo de court, ça ne donne pas envie de faire péter le code.


---------------
Main/Alt1/Alt2/Alt3
n°2193205
vort
Posté le 06-06-2013 à 18:00:33  profilanswer
 

Volkhen a écrit :

Bon aller, une fonction récursive et un array_slice en plus et c'est dans le sac  [:bobbyfrasier:4]  
 
Mais vu que ça sent l'exo de court, ça ne donne pas envie de faire péter le code.


Perdue ^^' je ne suis plus en cours je bosse, et c'est pour un projet personnel. C'est que j'ai compris qu'il fallait un tableau, mais je n'arrive pas à comprendre comment je peux faire pour rendre le reste fonctionnel. Je ne veux pas non plus un code entier, je veux simplement une aide pour comprendre car là tu me donne des fonctions, mais pas leurs syntaxes (même si je peux voir sur le site mais tu as l'air plus renseigné).


---------------
Dév amateur : eternity-online-game.net (en cours de codage)
n°2193226
bistouille
Posté le 06-06-2013 à 21:59:27  profilanswer
 

En gros, tu veux générer les combinaisons possibles des éléments de ton tableau suivant une longueur prédéfinie, c'est assez simple à faire.
 
Cherche « combinaisons php » dans ton moteur de recherche préféré :D

n°2193328
vort
Posté le 07-06-2013 à 15:47:10  profilanswer
 

je crois que je n'ai pas fini de chercher ^^' parce que je vais me retrouver finalement avec 2 soucis :  
la premier est que j'ai vue comment faire mais le code ne se met pas à jour, c'est à dire qu'a priori je suis obligé de rajouter du code pour passer à la lettre suivante (a, aa, aaa, etc) Je n'ai donc pas trouver mon bonheur ou alors ça devient plus compliqué que ce je pensais
Mais en plus de ça, je pensais faire un système en ajax pour permettre au scrypt de "souffler" car par exemple pour générer 10 caractères :
1+2+3+4+5+6+7+8+9+10 = 55 avec toutes les lettres d'alpahabet et numérique ainsi que les majuscules, bref -> erreur php durant l’exécution -  mais je pense que ça va être plus compliqué que ce qu'il n'y parait.
 
EDIT : je vais faire un test avec un système de variable, je viens d'avoir une idée.
 
EDIT 2 : A priori ça fonctionnerai mais je crains au niveau du php, il ne suivra pas. Est-ce que on peut le faire en ajax ?


Message édité par vort le 07-06-2013 à 16:15:34

---------------
Dév amateur : eternity-online-game.net (en cours de codage)
n°2193348
bistouille
Posté le 07-06-2013 à 19:49:22  profilanswer
 

Générer toutes les combinaisons de 10 caractères parmi 55 caractères, c'est un peu loufoque, c'est certain que php va pas aimer beaucoup et encore moins le navigateur client si tu t'orientes vers du js, ça fait du 29 248 649 430 combinaisons possibles sans doublons (si je me goure pas  :o  )
 
Tu peux déjà mettre le set_time_limit à 0 et attendre impatiemment et avec certitude un out of memory :whistle:  
 
En fait quel est le but final de générer ces combinaisons ?

mood
Publicité
Posté le 07-06-2013 à 19:49:22  profilanswer
 

n°2193371
vort
Posté le 07-06-2013 à 23:55:34  profilanswer
 

bistouille a écrit :

Générer toutes les combinaisons de 10 caractères parmi 55 caractères, c'est un peu loufoque, c'est certain que php va pas aimer beaucoup et encore moins le navigateur client si tu t'orientes vers du js, ça fait du 29 248 649 430 combinaisons possibles sans doublons (si je me goure pas  :o  )
 
Tu peux déjà mettre le set_time_limit à 0 et attendre impatiemment et avec certitude un out of memory :whistle:  
 
En fait quel est le but final de générer ces combinaisons ?


Et comme je souhaiterais en plus faire du doublon :p un très gros test, mais ça me fait pas peur ;) le php ça va etre très léger, il ne survivra pas, mais normalement en js ça devrait être plus possible,


---------------
Dév amateur : eternity-online-game.net (en cours de codage)
n°2193389
vort
Posté le 08-06-2013 à 12:01:24  profilanswer
 

Je reviens au nouvelle :  
$(document).ready(function(){
 $('#infos').html('Lancement du systeme...');
 setTimeout('randomLoad()', 2000);
});
 
function randomLoad()
{
 chiffres = new Array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm' ,'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'X', 'Y', 'Z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9');
 nb = chiffres.length;
 combinaisons = new Array();
 numberColonne = 1;
 colonne1 = 0;
 colonne2 = 0;
 colonne3 = 0;
 generation = 0;
 while(colonne1 < nb)
 {
  combinaisons = chiffres[colonne1];
   console.log(combinaisons);
  colonne1++;
  generation++;
   
  while(colonne2 < nb)
  {  
   combinaisons2 = chiffres[colonne2];
   console.log(''+combinaisons+ '' +combinaisons2+ '');
   colonne2++;
   generation++;
   
   while(colonne3 < nb)
   {
    combinaisons3 = chiffres[colonne3];
    console.log(''+combinaisons+ '' +combinaisons2+ '' +combinaisons3+ '');
    colonne3++;
    generation++;
   }
   if(colonne3 == nb)
    colonne3=0;
  }
  if(colonne2 == nb)
   colonne2 = 0;
 }
 console.log(''+generation+' générations on était faites');
 
 
}
 
J'ai finalement trouvé une solution. Java morfle (219660 possibilités). Je vais essayé de fois si je ne peux pas faire un arrêt forcé toutes les x secondes pour permettre au navigateur de souffler et de laisser un script propre.
 
EDIT : Java morfle vraiment ^^ sur mon pc de test Mozilla monte a 5 Go de Ram utilisés et ça doit faire déjà quelques dizaines de minutes qu'il bosse


Message édité par vort le 08-06-2013 à 15:57:37

---------------
Dév amateur : eternity-online-game.net (en cours de codage)
n°2193418
vort
Posté le 09-06-2013 à 09:09:03  profilanswer
 

Le problème est résolu. Java n'étant pas assez puissant pour ce que je voudrais faire, j'ai décidé de passer sous un langage plus puissant qui se tourne vers du c#, je pense meme voir à du c++ mais je sais pas si la différence se fera voir


---------------
Dév amateur : eternity-online-game.net (en cours de codage)

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  random chiffre, lettre, caractère spéciaux

 

Sujets relatifs
Besoin d'aide, décompte automatique de chiffre a virgule[C] Remplacer un char dans une chaine de caractère
[VBA] Savoir si n'importe quel caractère défini est plusieurs fois...C++ - Cplex problem de variable dans une boucle for & random
Chaine de caractère entre dièse inattenduregex : pattern pour détecter les lettres et leur accent [résolu]
Extraction chaine de caractere variable [RESOLU]déterminer un pseudo chiffre unique depuis une url
grep caractère joker "dans les deux sens" 
Plus de sujets relatifs à : random chiffre, lettre, caractère spéciaux


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR