begin process at 2010 07 29 15:49:15
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Math & Algorithmes

 > GÉNÉRATEUR DE BASE ARITHMÉTIQUE

GÉNÉRATEUR DE BASE ARITHMÉTIQUE


 Description

voici mon premier petit script en python qui permet de générer des bases aritmétiques (binaire, héxadécimal,...).
Un des intérets de ce script est de générer des combinaisons de mots pour les routines visant à casser un mot de passe :-D

Source

  • def StringtoList(chaine):
  • i=0
  • result = []
  • while i<len(chaine):
  • result.append(str(chaine[i]))
  • i = i+1
  • return result
  • def ModifyWord(word_init, index):
  • word = StringtoList(word_init)
  • tab = []
  • tab=['a','b','c','d','e','f','g','h','i','j','k','l','m','n','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','W','X','Y','Z','0',
  • '1','2','3','4','5','6','7','8','9','_','$','&','#','@']
  • if index >= 0:
  • if word[index] != tab[len(tab)-1]:
  • i=0
  • while word[index] != tab[i]:
  • i=i+1
  • word[index] = tab[i+1]
  • else:
  • word[index] = tab[0]
  • word = ModifyWord(word,index-1)
  • else:
  • taille = len(word)
  • i=0
  • temp = []
  • while i < taille +1 :
  • temp.append(tab[0])
  • i=i+1
  • word = temp
  • result = ''
  • for i in range(len(word)) :
  • result = result + str(word[i])
  • return (result)
  • chaine =''
  • while 1 == 1:
  • print chaine
  • chaine = ModifyWord(chaine, len(chaine)-1)
def StringtoList(chaine): 
        i=0 
        result = [] 
        while i<len(chaine): 
                result.append(str(chaine[i])) 
                i = i+1 
        return result 

def ModifyWord(word_init, index): 
        word = StringtoList(word_init) 
        tab = [] 
        tab=['a','b','c','d','e','f','g','h','i','j','k','l','m','n','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','W','X','Y','Z','0',
		'1','2','3','4','5','6','7','8','9','_','$','&','#','@'] 
        if index >= 0: 
                if word[index] != tab[len(tab)-1]: 
                        i=0 
                        while word[index] != tab[i]: 
                                i=i+1 
                        word[index] = tab[i+1] 
                else: 
                        word[index] = tab[0] 
                        word = ModifyWord(word,index-1) 
        else: 
                taille = len(word) 
                i=0 
                temp = [] 
                while i < taille +1 : 
                        temp.append(tab[0]) 
                        i=i+1 
                word = temp 
        result = '' 
        
        for i in range(len(word)) : 
                result = result + str(word[i]) 
        return (result) 
chaine =''
while 1 == 1:
	print chaine
	chaine = ModifyWord(chaine, len(chaine)-1)

 Conclusion

Attention, si vous copiez coller le code méfiez vous des tabulations !
Voili, voilou, vous pouvez retrouvez ce code sur mon site web http://opsi.free.fr/index.php?2007/09/21/45-python -generateur-de-base-arithmetique
Pour changer la base il suffit de modifier la list tab. exemple tab=['0','1','2','3','4','5','6','7','8','9']


 Sources de la même categorie

CALCUL LIST DE NOMBRES PREMIERS par White541
TROUVER TOUT LES QUADRILATÉRES POSSIBLES AVEC N POINTS ALEAT... par Buenol
Source avec Zip GÉNÉRATION D'UN LABYRINTHE AVEC RECHERCHE DU CHEMIN LE PLUS ... par mehdicherti
Source avec Zip Source avec une capture DIVISIONS AVEC PRÉCISION RÉGLABLE par Clempython
Source avec Zip Source avec une capture LE CALCULATOR DE RAYGOLD VERSION 3.1 par raygold

 Sources en rapport avec celle ci

CHANGEMENT DE CASSE par linkid
Source avec Zip NOMBRES DE KAPREKAR par linkid
GÉNÉRATEUR DE MOT DE PASSE par neoboy_84
INTERFACE POUR : CONVERSION DE BASE par veracruz
CLASSES POUR LA CONVERSION DE BASE par veracruz

Commentaires et avis

Commentaire de aera group le 23/09/2007 19:38:54

Ton programme ne s'arrète jamais ! Es ce normal ?

Commentaire de opsi1985 le 23/09/2007 20:06:28

Oui, Oui c'est tout à fait intentionnel! C'est à cause du "while 1==1"! Pour donner une limite, il suffit de modifier la condition du while ligne 40 :-)

Commentaire de xeolin le 29/09/2007 21:27:47

juste, tu peut remplacer while 1==1 par while 1 ou while True

Commentaire de opsi1985 le 29/09/2007 21:46:42

Ok merci pour l'info, comme je l'ai dit, je suis débutant en python, donc tout les commentaires sont les bienvenues :-) !!

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

instruction de base sous Python de transfert de fichiers [ par dgpgl ] Comment transferer des fichiers par xxx.jpeg depuis un PC windows sur une&nbsp; machine linux... a l'adresse xxx.ccc.com qui est ouverte via un port s base de donnée [ par Thomeux ] Bonjour,Je débute en python, je programmais jusqu'ici en vb.J'ai un programme en vb qui utilise les données d'un tableau double entrées Excel.L'ennui, pb recupération données d'une base oracle [ par louba63 ] Bonjour, J'ai un petit soucis. Je recupere des données dans une base de données Oracle par l'intermédiaire d'un programme python. Mon probleme est combobox [ par titasse ] bonjour,je suis debutant en Python, j'aimerai realiser une application pour mettre a jour une base de donnee utilisateur, j'ai creer un combobox qui m WXPYTHON et Base de données [ par dayiri ] Salut,je débute en python. j'arrive à concevoir des interfaces graphiques, je voudrois mettre une base de données en arrière plan de l'interface et po [php][sql]recherche multiple dans une base de donnée sql [ par jeff83fr ] Bonjour, j'ai un problème de récupération a ma base de donné, je m explique je souhaiterai faire un annuaire je souhaiterai donc faire une page un p Importer la Base de registre windows en xml pour la réutiliser en xml. [ par Psychokenshin ] Bonjour à tous, Je cherche donc à exporter ma base de registre windows dans un fichier xml et ce de façon à pouvoir l'utiliser facilement dans un dic Entry et casse [ par Mic92 ] Bonjour à tous, je suis sous python 2.5 avec Tkinter. Je cherche à controler une Entry, autrmemnt dit je veux que l'Entry soit enregistrer en minusucl


Nos sponsors


Sondage...

CalendriCode

Juillet 2010
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,655 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales