Crypteur de chaîne de caractère en C
4 participants
Tout l'univers de la programmation ! :: La Programmation :: Vos codes-sourçe tout langages confondus
Page 1 sur 1
Crypteur de chaîne de caractère en C
Ce petit programme en C a été entièrement codé par moi, bien sur le
cryptage est très simple et n'utilise pas de clef de cryptage, je ne me
suis pas concentré sur le code concernant le cryptage mais je compte
m'y attarder
Remarquez que l'on ne peux pas entrer une chaînes
de caractères avec un ou plusieurs espaces, sinon ça bug, allez voir ma
présentation j'y est expliqué mon problème, ^^
J'accepte toute remarque^^ ( bonne ou mauvaise )
Voci le code :
cryptage est très simple et n'utilise pas de clef de cryptage, je ne me
suis pas concentré sur le code concernant le cryptage mais je compte
m'y attarder
Remarquez que l'on ne peux pas entrer une chaînes
de caractères avec un ou plusieurs espaces, sinon ça bug, allez voir ma
présentation j'y est expliqué mon problème, ^^
J'accepte toute remarque^^ ( bonne ou mauvaise )
Voci le code :
- Code:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX 1000
//Veuillez, s'il vous plaît, respecter mon travaille en laissant ce commentaire...
//By akamaru
char crypt( char chaineC[], long LchaineC);
char decrypt( char chaineC[], long LchaineC );
int main()
{
printf("Tapez \"help\" dans la console pour afficher la liste des commandes disponibles :\n\n\n");
int exit = 1;
do
{
char chaine[MAX] = "";
printf("Console> ");
scanf("%s", chaine);
if ( strcmp("help", chaine) == 0 )
{
printf("\nhelp affiche toutes les commandes disponibles\n");
printf("exit Quitte la console\n");
printf("crypt Permet de crypter un mot (espace non tolere)\n");
printf("decrypt Permet de decrypter un mot (espace non tolere)\n\n");
}
else if ( strcmp("exit", chaine) == 0 )
{
exit = 0;
}
else if ( strcmp("crypt", chaine) == 0 )
{
//chaine[MAX] = "";
printf("\nCrypt> ");
scanf("%s", chaine);
long Lchaine = 0;
Lchaine = strlen(chaine);
crypt( chaine, Lchaine );
printf("Crypted -> %s\n\n", chaine);
}
else if ( strcmp("decrypt", chaine) == 0 )
{
//chaine[MAX] = "";
printf("\nDecrypt> ");
scanf("%s", chaine);
long Lchaine = strlen(chaine);
decrypt( chaine, Lchaine );
printf("Decrypted -> %s\n\n", chaine);
}
else if ( strcmp("test", chaine) == 0 )
{
char chaine01[20];
printf("Tapez une phrase : \n");
fgets(chaine01, sizeof chaine01, stdin);
printf("Vous avez tape : '%s'", chaine01);
}
else
{
printf("Commande invalide\n");
}
} while ( exit == 1 );
return 0;
}
char crypt( char chaineC[], long LchaineC )
{
long i;
for ( i = 0 ; i != LchaineC ; i++ )
{
chaineC[i] = chaineC[i] - 5;
}
}
char decrypt( char chaineC[], long LchaineC )
{
long i;
for ( i = 0 ; i != LchaineC ; i++ )
{
chaineC[i] = chaineC[i] + 5;
}
}
Dernière édition par le Sam 24 Nov - 15:12, édité 1 fois
akamaru- Messages : 7
Date d'inscription : 24/11/2007
Re: Crypteur de chaîne de caractère en C
Merci ça fait plaisir ^^ mais j'accepte aussi les remarques, peut être aurais-je pu faire plus clair non ? comment aurais-je pu m'organiser autrement ?
je sais pas moi lol, je veux au moin une remarque négatif pour que je puisse l'améliorer :p
je sais pas moi lol, je veux au moin une remarque négatif pour que je puisse l'améliorer :p
akamaru- Messages : 7
Date d'inscription : 24/11/2007
Re: Crypteur de chaîne de caractère en C
Oui tu aurais pus faire plus claire si tu veux je peux corriger un peu ton programme pour qu'il fasse un peu moin de ligne ^^
("Tapez \\" " dans la console pour afficher la liste des commandes disponibles :\\n\\n\\n");
donc il ne prendra pas en compte le help
- Code:
Dans ton printf("Tapez \\"help\\" dans la console pour afficher la liste des commandes disponibles :\\n\\n\\n");
("Tapez \\" " dans la console pour afficher la liste des commandes disponibles :\\n\\n\\n");
donc il ne prendra pas en compte le help
Dernière édition par le Sam 24 Nov - 21:26, édité 2 fois
Brucelee410- Messages : 64
Date d'inscription : 27/08/2007
Re: Crypteur de chaîne de caractère en C
Ah ouai si ça te dérange pas comme ça je pourrais voir un peu une autre manière de coder parceque chacun a sa manière de coder et ça me fera pas de mal de voir un code source de moi modifier par quelqu'un d'autre ^^
akamaru- Messages : 7
Date d'inscription : 24/11/2007
Re: Crypteur de chaîne de caractère en C
Une question, tu travail sur quoi DevC++?
Sinon voile le code corriger sur BorlandC++:
Pour tes variables,declare les justes apres l'accolade de ta fonction main.
Sinon voile le code corriger sur BorlandC++:
- Code:
#include
#include
#include
#define MAX 1000
//Veuillez, s'il vous plaît, respecter mon travaille en laissant ce commantaire...
//By akamaru
char crypt( char chaineC[], long LchaineC);
char decrypt( char chaineC[], long LchaineC );
void main(void)
{
int exit = 1;
long Lchaine = 0;
printf("Tapez 'help' dans la console pour afficher la liste des commandes disponibles :\n\n\n");
do
{
char chaine[MAX] = "";
printf("Console> ");
scanf("%s", chaine);
if ( strcmp("help", chaine) == 0 )
{
printf("\nhelp affiche toutes les commandes disponibles\n");
printf("exit Quitte la console\n");
printf("crypt Permet de crypter un mot (espace non tolere)\n");
printf("decrypt Permet de decrypter un mot (espace non tolere)\n\n");
}
else if ( strcmp("exit", chaine) == 0 )
exit = 0;
else if ( strcmp("crypt", chaine) == 0 )
{
//chaine[MAX] = "";
printf("\nCrypt> ");
scanf("%s", chaine);
Lchaine = strlen(chaine);
crypt( chaine, Lchaine );
printf("Crypted -> %s\n\n", chaine);
}
else if ( strcmp("decrypt", chaine) == 0 )
{
//chaine[MAX] = "";
printf("\nDecrypt> ");
scanf("%s", chaine);
Lchaine = strlen(chaine);
decrypt( chaine, Lchaine );
printf("Decrypted -> %s\n\n", chaine);
}
else if ( strcmp("test", chaine) == 0 )
{
char chaine01[20];
printf("Tapez une phrase : \n");
fgets(chaine01, sizeof chaine01, stdin);
printf("Vous avez tape : '%s'", chaine01);
}
else
printf("Commande invalide\n");
} while ( exit == 1 );
return 0;
}
char crypt( char chaineC[], long LchaineC )
{
long i;
for ( i = 0 ; i != LchaineC ; i++ )
chaineC[i] = chaineC[i] - 5;
}
char decrypt( char chaineC[], long LchaineC )
{
long i;
for ( i = 0 ; i != LchaineC ; i++ )
chaineC[i] = chaineC[i] + 5;
}
Pour tes variables,declare les justes apres l'accolade de ta fonction main.
Brucelee410- Messages : 64
Date d'inscription : 27/08/2007
Re: Crypteur de chaîne de caractère en C
Ah nan bah y'a eu un bug sur le forum moi je code sous CodeBlocks et je ne fais pas \\n mais \n j'édite mon post vous verrez...
Regarde la preuve : Brucelee ton code corrigé a été modifié, regarde les includes ça me l'a fait à moi aussi quand j'ai voulu poster sur ce forum c'est un peu merdique je trouve
Regarde la preuve : Brucelee ton code corrigé a été modifié, regarde les includes ça me l'a fait à moi aussi quand j'ai voulu poster sur ce forum c'est un peu merdique je trouve
akamaru- Messages : 7
Date d'inscription : 24/11/2007
Re: Crypteur de chaîne de caractère en C
non il n'y a pas de bug ou alors ca ne te le fait qu'a toi car je n'ai pas le probleme du double backslash ni des includes
Au dessus il prend comme pour un lien en faite
Au dessus il prend comme pour un lien en faite
Brucelee410- Messages : 64
Date d'inscription : 27/08/2007
Re: Crypteur de chaîne de caractère en C
Bonjour à tous,
Désolé j'avais pas de compilateur sous la main pour tester le code source, mais je verrais bien un truc comme ça...
Désolé j'avais pas de compilateur sous la main pour tester le code source, mais je verrais bien un truc comme ça...
- Code:
#include "stdio.h"
#include "stdlib.h"
#include "string.h"
#define MAX 1000+1
//Veuillez, s'il vous plaît, respecter mon travaille en laissant ce commentaire...
//By akamaru
char crypt(char chaineC[], long LchaineC);
char decrypt(char chaineC[], long LchaineC);
int main(){
printf("Tapez \"help\" dans la console pour afficher la liste des commandes disponibles :\n\n\n");
int exit = 1;
do{
char chaine[MAX] = "";
printf("Console> ");
fgets(chaine, MAX, stdin);
switch(chaine){
case"help":
printf("\nhelp = Affiche toutes les commandes disponibles\n");
printf("exit = Quitte la console\n");
printf("crypt = Permet de crypter un mot (espace non tolere)\n");
printf("decrypt = Permet de decrypter un mot (espace non tolere)\n\n");
break;
case "exit":
exit = 0;
break;
case "crypt":
printf("\nCrypt> ");
scanf(" 1000%sA-Za-z0-9", chaine);
long Lchaine = 0;
Lchaine = strlen(chaine);
crypt( chaine, Lchaine );
printf("Crypted -> %s\n\n", chaine);
case "decrypt":
printf("\nDecrypt> ");
scanf(" 1000%sA-Za-z0-9", chaine);
long Lchaine = strlen(chaine);
decrypt(chaine, Lchaine);
printf("Decrypted -> %s\n\n", chaine);
break;
default:
printf("Commande invalide\n");
break;
}
}
while(exit == 1);
return 0;
}
char crypt(char chaineC[], long LchaineC){
long i;
for(i = 0; i != LchaineC; i++){
chaineC[i] = chaineC[i] - 5;
}
}
char decrypt(char chaineC[], long LchaineC){
long i;
for(i = 0; i != LchaineC; i++){
chaineC[i] = chaineC[i] + 5;
}
}
Sophocle- Messages : 1
Date d'inscription : 06/04/2009
Tout l'univers de la programmation ! :: La Programmation :: Vos codes-sourçe tout langages confondus
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum