Devenir membre club
Connectez vous
Aide & règlement
Votre 1ère visite
Le règlement
Contacter les admins
Contacter le webmaster
Questions & réponses
Comment soutenir CodeS-SourceS
Comment faire un lien vers CodeS-SourceS
Autres questions
A propos & don
A propos du réseau
Les modérateurs
Remerciements
Faire un don
Le livre d'or
Tous les livres
Les dernières parutions
Les plus consultés
Les critiques
Le top des ventes
Le top favoris des membres
Recevoir des livres blancs
Tous les thèmes
Les derniers messages
Les nouveaux messages
Poser une question
Le Chat - IRC
Tous les tutoriels
Ajouter un tutoriel
Les tutoriels en vidéo
Les formations vidéos
Tous les codes
Ajouter un code
Filtrer par catégorie
Filtrer par date
Les plus récents
Les mis à jour
Les codes par jour
Filtrer par niveau
Niveau débutant
Niveau initié
Niveau expert
Filtrer par type
Les codes avec capture
Les codes avec zip
Les codes .Net
Filtrer par qualité
Les plus populaires
Les plus populaires du mois
Les plus téléchargés
Les mieux notés
Top par catégorie
Top des favoris
Filtrer par auteur
Tous les auteurs
Le top des membres
Les snippets
Déposer votre CV
Consulter les offres d'emploi ou de stage
Consulter les CVs
Déposer une offre d'emploi ou de stage
Modèles de CV et lettres
Trouver une convention collective
Les écoles d'informatique
Toutes les écoles
Ajouter une école
Les outils
Outils pour développeurs
Trouver des ressources
Base de données de CodeS-SourceS
Télécharger les meilleurs logiciels
Comparer les prix
Envoyer des ecards
Création de bannières
Annuaire de la prog
Tous les sites
Ajouter votre site
Le dico de la prog
Toutes les définitions
Ajouter une définition
Les évènements
Tous les évènements
Les évènements à venir
Ajouter un évènement
Téléchargements
CodeS-SourceS Toolbox
CodeS-SourceS Toolbar
Toolbar pour FireFox
Fonds d'écran
Les compil's
Nos partenaires
Magazine Programmez
Frontier.fr
Xiti
ProgOnline
Winwise
Editions Eyrolles
Toute la liste
Les RFC
CS
VB, VB.NET
ASP.NET,ASP
C, C++
ColdFusion
PHP
Javascript
Delphi
Flash
Java
Graphisme
Irc
Assembleur
C#
Mobilité
SQL
Foxpro
Python
Regex
Flex
Windev
Ce site au démarrage
begin process at 2012 02 14 03:32:31
Accueil
Codes
Tutoriels
Forum
Livres
Emploi
Services
Connexion
Trouver un code source :
dans
Tout le site
Codes
Tutoriels
Forum
Blogs
Livres
RFC
Icones
News .NET
Boutique
[ Dernières recherches ]
Veuillez saisir votre recherche... Ex: smtp, lire un fichier, rs232
Options de recherche :
Tous les codes
Tous les codes en .Net
Tous les codes sauf .Net
Langages disponibles :
Tous les langages
ASP / ASP.NET
Assembleur
C / C++ / C++.NET
C# / C#.NET
ColdFusion
Delphi
Flash
Flex, Air, ActionScript
Foxpro
Graphisme
IRC
JAVA / J2EE
Javascript / Ajax / DHTML
PDA / PocketPC
PHP
Python
Regex, Regular Expression, Expression régulière
SQL
Visual Basic, VB6, VB.NET, VB 2005, VB
11 commentaire(s) de VladislavIV
sur des sources sur tout
CodeS-SourceS
Déposé sur
Chiffre de vigenère
Bien sûr !
sortie, i = "", 0 est une série d'affectations. J'aurai pu écrire
sortie = ""
i = 0
% est l'opérateur "modulo" : x % y renvoie le reste de la division de x par y.
chr( ( ord(caract) + ord(cle[i]) ) % 256 )
L'objectif est d'obtenir un caractère codé, en faisant la "somme" d'un caractère en clair et d'un caractère de la clé.
clair + clé = code
J'additionne donc les codes ascii, puis je fais % 256 pour obtenir une valeur entre 0 et 256 -> on retombe sur la table ascii. On peut alors utiliser chr() pour obtenir le caractère correspondant, codé.
En espérant être clair ;)
Posté le :
15/05/2007 09:31:35
Déposé sur
Pytineris!
Ouiii... enfin, ne poussons pas le vice trop loin ! :D Mais c'est vrai qu'en donnant comme valeur à chaque arc, les Km de routes qui séparent les deux villes, on peut trouver le parcours minimal en Km pour aller d'une ville donnée à une autre.
Ca ne devrait pas être trop dur à faire, vu ce qu'il y a déjà !
Posté le :
02/05/2007 22:26:42
Déposé sur
Pytineris!
Je n'ai pas pu tester le code (pas installé PIL), mais je te propose ceci pour la méthode pluscourtchemin, de la classe Itineraire (modifications signalées par #<----):
def pluscourtchemin(self, G, start, end):
def flatten(L): # Flatten linked list of form [0,[1,[2,[]]]]
while len(L) > 0:
yield L[0]
L = L[1]
q = [(0, start, ())] # Heap of (cost, path_head, path_rest).
visited = set() # Visited vertices.
res = False #<----
fin = False #<----
while not fin: #<----
(cost, v1, path) = heappop(q)
if v1 not in visited:
visited.add(v1)
if v1 == end:
res = list(flatten(path))[::-1] + [v1] #<----
fin = True #<----
path = (v1, path)
for (v2, cost2) in G[v1].iteritems():
if v2 not in visited:
heappush(q, (cost + cost2, v2, path))
return res #<----
Pour être "propre", une fonction ne doit avoir qu'un seul point de sortie (return), et cela doit être sa dernière instruction. Visualise l'exécution comme un fluide qui sécoule du début à la fin de ta fonction : il n'y a qu'une entrée, il n'y a qu'une sortie. Entre les deux, le traitement. Il faut éviter de mettre des sorties n'importe où au milieu, ou on prend le risque de ne pas contrôler le flux.
De plus, si on fait abstraction de ton "return" au milieu du code, ta boucle "while True:" est une boucle infinie. Il faut absolument éviter ça, ça ne t'apportera que des ennuis !
En espérant être utile ;)
A++
Posté le :
16/04/2007 11:32:03
Déposé sur
Chiffre de vigenère
Désolé, mais je n'ai pas reçu ton message, ou alors je ne peut pas le voir...
Je t'ai envoyé mon adresse mail sur ta messagerie privée. Et oui, elle est bien valide ;)
++
Posté le :
15/01/2007 19:30:03
Déposé sur
Chiffre de vigenère
Oui, hum... Il me faudrait peut-être ton adresse mail, si tu veux que je t'envoie tout ça ! :) Passe-la moi donc par la messagerie privée (cliques sur mon pseudo), tu recevra un courriel avec un lien pour télécharger une archive zip avec tout ce qui va bien dedans.
Posté le :
14/01/2007 22:38:35
Déposé sur
Chiffre de vigenère
En effet je n'ai pas publié le programme. Il te faut donc Visual Studio 2003 ou 2005. Il est payant, sauf si tu es étudiant en informatique ;)
Ce programme est une sorte de grosse usine à gaz qui te permettra d'écrire et utiliser des programmes écrits en VB.NET
Si tu ne peut pas te le procurer, je pourrai toujours t'envoyer le programme et ce qu'il faut par mail. Par contre tu ne pourras pas développer de programmes sans VS.
Posté le :
14/01/2007 16:19:16
Déposé sur
Crypteur/décrypteur md5 (par dico)
Bonjour à tous.
Je sais qu'il se fait tard, mais faut croire que j'aime à converser quelques mois (années?) après qu'un sujet se soit épuisé...
Pour commencer, thecryingshadow, la fonction MD5 est une fonction de hashage, pas de cryptage. On va me dire que je chipotte, mais les mots sont là pour ça. :)
Ensuite, ta fonction avecArgv() n'est pas une fonction. Une fonction (comme l'addition) retourne un résultat (2+2 = 4) qui peut être affecté à une variable
(res = 2+2). avecArgv() est une procédure. Parlons le même langage, ça aide à se comprendre.
Après les remarques amères :p, les remarques pratiques !
Il est déconseillé de donner à un scipt Python le même nom qu'un module existant. Ton script se nomme md5, et il importe un module nommé md5... A éviter.
Pour ce qui est de la variable CRYPTED, à éviter aussi : l'utilisateur n'a pas à changer le programme pour l'utiliser. Tu pourrai mettre un système d'appel à deux paramètres :
le premier indique que l'on veut hasher / retrouver un mot,
le second est le mot / le hash à traiter.
Exemple :
erreur = """
Usage : md5.py option chaine
option : -hash : hasher la chaine
-find : trouver le mot correspondant au hash chaine
"""
if len(argv) != 3: #mauvais appel du programme
print erreur
elif not argv[1] in ['-hash','-find']: #mauvaise option
print erreur
elif argv[1] == '-hash':
Hasher(argv[2]) #la chaine est un mot à hasher
elif argv[1] == '-find':
Trouver(argv[2]) #la chaine est un hash : rechercher le mot correspondant
Voilà voilà. Ca devrait te servir ! Sauf si tu t'en sers déjà :)
Bonne continuation.
Posté le :
24/07/2006 10:31:18
Déposé sur
Cryptage / decryptage de texte en utilisant l'algorythme de v...
Oups... Petite correction : le déchiffrement ne se fait pas selon la même formule :
asc(clair) = (asc(codé) - asc(clé)) mod 256. Là ça marche !!
Au temps pour moi, je retire ce que j'ai dit. Je récapitule :
Chiffrer : (lettre_claire + lettre_clé) mod 256
Déchiffrer : (lettre_codée - lettre_clé) mod 256
Voilà !
Mais ton algo montre bien qu'avec un peu de volonté on y arrive, même sans s'embrouiller avec les maths ! ;) Cela dit, ça pourra t'économiser des lignes si tu fais une grosse appli sur les algorithmes de chiffrement.
Bon boulot, et bonne continuation !
A++
Posté le :
16/04/2006 20:09:51
Déposé sur
Cryptage / decryptage de texte en utilisant l'algorythme de v...
Salut DARKEENU,
A priori, cette formule devrait salement accélérer le processus... Maintenant, en tant qu'êtres humains, on ne verrait peut-être pas la différence ! ;)
Tu utilise tous les caractères ascii, exact ? donc pour avoir le code ascii d'un caractère crypté, tu fais : (asc(clair) + asc(clé)) mod 256. Du coup, tu as seulement deux mécanismes à faire tourner autour : parcourir toute la chaîne à crypter d'un côté, et en même temps tourner en boucle sur la clé de cryptage.
Ca devrait diminuer pas mal la longeur de ton code.
Exemple :
dim txt_clair as string
dim clé as string
dim txt_crypté as string
dim i as integer 'compteur de boucle : déplacement sur txt_clair
dim j as integer 'compteur de boucle : déplacement sur clé
'initialisation
txt_crypté = ""
j = 0
For i = 0 to txt_clair.length - 1 'parcours de la chaîne à crypter
'cryptage
txt_crypté = txt_crypté & chr((asc(txt_clair.chars(i)) + asc(clé.chars(j))) mod 256)
'on avance sur la clé
j = j + 1
If j > clé.length - 1 Then j = 0 'on a atteint la fin de la clé : on se replace au début
Next
Ca suffit à chiffrer tout le texte !
Désolé c'est du .NET, je sais pas si c'est pareil sous VB6... Donc c'est plus court, c'est plus rapide. Tu trouveras des détails sur le chiffre de Vigenère sur http://fr.wikipedia.org/wiki/Vigen%C3%A8re.
Notamment ceci : pour décrypter un texte chiffré avec la table de Vigenère, il suffit de lui refaire subir le même traitement. Donc tu ne devrais pas avoir de fonction "décrypter", cela devrait fonctionner rien qu'en repassant le texte chiffré dans ta fonction Crypter. Ce qui n'est pas le cas... Ce n'est donc pas un chiffre de Vigenère !
Perso, je viens de tester la formule citée... Bilan : ça ne marche pas avec moi non plus !! :) Je vais essayer de voir pourquoi...
A++ !
Posté le :
16/04/2006 17:21:02
Déposé sur
Cryptage / decryptage de texte en utilisant l'algorythme de v...
Salut DARKEENU,
Si tu veux élargir le jeu de caractères, tu adaptes la numérotation : pour le jeu A..Za..z tu comptes 0..51, etc... Le tout c'est de respecter la même numérotation partout, et de faire modulo le nombre de caractères. C'est mathématique. A priori.
Maintenant, je dis ça, mais j'ai pas testé... Je te laisse l'honneur ;)
A++
Posté le :
05/04/2006 20:35:40
1
2
Nos sponsors
Derniers Blogs
XNA IS DEAD!
XNA IS DEAD!
par richardc
Depuis la semaine dernière (et grâce aux TechDays 2012), je me penche activement sur la nouvelle version de Windows, aka Windows 8. Vous me direz, il était temps puisque la première preview date de Septembre dernier. OK. Remarquez, on n'en est qu'aux...
Cliquez pour lire la suite de l'article
par richardc
TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !
TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !
par ROMELARD Fabrice
Speakers: Fabrice Meillon et Stanislas Quastana Cette session est basée entièrement sur celle donnée lors de la BUILD cet hiver. Il n'y a pas d'ajout d'information en rapport avec cet évènement passé. Windows 8 Server sera intégralem...
Cliquez pour lire la suite de l'article
par ROMELARD Fabrice
[HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE)
[HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE)
par Gio
Je m'y prends un peu tard je sais, mais bon je suis développeur web et donc hyper fainéant ! Toujours dans le cadre des technologies émergentes, ici HTML5, parce qu'on aime HTML5 chez Wyg , nous seront présent, le vieux ( Aurélien V.) et moi, pour pr...
Cliquez pour lire la suite de l'article
par Gio
TECHDAYS PARIS 2012 : CHUCK MORRIS N'A PAS PEUR DES MALWARES, CE SONT LES MALWARES QUI ONT PEUR DE CHUCK MORRIS
TECHDAYS PARIS 2012 : CHUCK MORRIS N'A PAS PEUR DES MALWARES, CE SONT LES MALWARES QUI ONT PEUR DE CHUCK MORRIS
par ROMELARD Fabrice
Speakers: Pascal Sauliere, Arnaud Lheureux, Stanislas Quastana et Cyril Voisin Cette session a pour but de présenter les grands risques présents sur Internet aujourd'hui, aussi bien pour les particuliers que les entreprises. Arnaques c...
Cliquez pour lire la suite de l'article
par ROMELARD Fabrice
[WP7] DYNAMICALLY CHANGE STARTUP PAGE
[WP7] DYNAMICALLY CHANGE STARTUP PAGE
par KooKiz
Let's say that you want to allow the user to customize the startup page of your application. You can easily change the startup page by editing the 'NavigationPage' attribute in the manifest file. But the manifest cannot be modified once the applicatio...
Cliquez pour lire la suite de l'article
par KooKiz
La suite
RSS
Côté IT
Utiliser Office 365 pour un projet d?équipe - PART 2
Utiliser Office 365 pour un projet d?équipe - PART 1
SharePoint 2007 : Installation du Service Pack 3 de MOSS
SharePoint 2007 : Installation du Service Pack 3 de WSS V3
Installation de SQL Server DENALI CTP3
Mise à jour de Windows 2003 R2 vers Windows 2008 R2
Upgrade de SQL Server 2005 vers SQL Server 2008 R2
La suite
RSS
Offres d'emploi
Recherche Recherche développeur web ASP et ASP.Net
Recherche Analyste Programmeur Adélia
Recherche Développeur eZ Publish confirmé
Recherche AP (H/F) ACCESS EXCEL VBA
Recherche SUPPORT INFORMATIQUE / DEVELOPPEUR
Recherche Developpeur web
Recherche développeur Web
Déposer une offre
La suite
RSS
Formations Video
Coffret : Ateliers sur la mode
Atelier sur la mode : Motifs et matières
Atelier sur la mode : La planche tendance
Atelier sur la mode : De retour de pige et repérage
Corel Painter 12 : Les fondamentaux
Coffret : Microsoft Office 2010 de A à Z
De Microsoft Office 2003 à 2007 et 2010
La suite
RSS
Appels d'offres
URGENT - Realisation d-un flux standard XML -NewsML- CAHIER DES CHARGES DISPONIBLE
Budget :
400€
Creation de newsletter sur une page Facebook
Budget :
400€
fichier d-export de site OS commerce ver plateforme logistique-CDC disponible
Budget :
1 200€
La suite
RSS
Logiciels
DocTranslate (V3.1.0.0)
DOCTRANSLATE (V3.1.0.0)
DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom...
Cliquez pour télécharger DocTranslate
Tribler (2012)
TRIBLER (2012)
Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des...
Cliquez pour télécharger Tribler
OneSwarm (2012)
ONESWARM (2012)
Le peer-to-peer qui protège votre vie privée, c'est OneSwarm. Ce logiciel de peer-to-peer crypté...
Cliquez pour télécharger OneSwarm
PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)
PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)
PONAMEDIA TV DEVIENS HELLLOOO FLASH LA TV SUR VOTRE ORDINATEUR. Toute une plateforme Multi...
Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO
Academy System (17.2.1.0)
ACADEMY SYSTEM (17.2.1.0)
Logiciel de gestion des établissements. - élèves/étudiants (inscription, dossier, absence...) -...
Cliquez pour télécharger Academy System
+ de logiciels à télécharger
Vidéos drôles
Halloween Party
Terry Tate Office Linebacker Superbowl 2003
Jeu vidéo instructif
C'est un véritable vol !
Banana Song
Comment attraper la grippe A
Parodie Pub Window 7
La suite
RSS
Sondage...
Votre navigateur n'utilise pas le javascript, pour
voter aux sondages de ce site, cliquez ici
Statistiques
1 874 209
membres
8
nouveaux aujourd'hui
16 152
membres club
Comparez les prix
Archos 5 Internet Tablette 500 Go
Entre 396€ et 444€
Visiter le guide achat
CalendriCode
Février
2012
L
M
M
J
V
S
D
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
Consulter la suite du CalendriCode
Photothèque
Visiter la photothèque
CS Tool Box