Convertisseur texte/Leet Speak en C
Résolu
$ Enzo $
Messages postés
311
Date d'inscription
Statut
Membre
Dernière intervention
-
$ Enzo $ Messages postés 311 Date d'inscription Statut Membre Dernière intervention -
$ Enzo $ Messages postés 311 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je voudrais faire un programme en console qui traduit le texte en 1337 (Leet Speak)
Pourriez-vous m'indiquez la fonction qui remplace des caractères par d'autre en C ?
Ce n'est peut-être pas très clair donc voici un exemple (je m'exprime souvent mal ^^) :
Dans un scanf() on écrit : "Bonjour"
et le programme doit nous affiche dans un printf() "80^/]0|_||?"
(Donc, il doit me remplacer le "B" par un "8",le "o" par un "0", le "n" par un "^/" etc...
Merci d'avance :-)
--
Enzo
Je voudrais faire un programme en console qui traduit le texte en 1337 (Leet Speak)
Pourriez-vous m'indiquez la fonction qui remplace des caractères par d'autre en C ?
Ce n'est peut-être pas très clair donc voici un exemple (je m'exprime souvent mal ^^) :
Dans un scanf() on écrit : "Bonjour"
et le programme doit nous affiche dans un printf() "80^/]0|_||?"
(Donc, il doit me remplacer le "B" par un "8",le "o" par un "0", le "n" par un "^/" etc...
Merci d'avance :-)
--
Enzo
Configuration: Windows 7 / Chrome 4.0.249.89
3 réponses
-
Salut,
Je penses que ce que tu veux dire n'est pas utiliser un autre jeuxx de caractères, donc oui, c'est possible.
Le code est en dessous de ce post.
A chaque caractère, il le trie selon tes critères.
Bye ;)
Ps : Pour system(), certains te diront que c'est de la bidouille. Remplace ces lignes-là alors.
Code :
#include <stdio.h> #include <stdlib.h> char* tri(char*); int main(int argc, char *argv[]) { char phrase [100]; while(1){ printf("Entrez un mot :\n"); scanf("%s", &phrase); printf("\nVous avez entré :\n%s\nLa phrase finale est :\n", phrase); printf("%s\n\n", tri(phrase)); system("pause"); system("cls"); // Efface l'écran sous Windows } system("pause"); return 0; } char* tri(char* contenu){ int i; for(i=0; contenu[i]!='\0'; i++){ switch(contenu[i]){ case 'B' : contenu[i]='8'; break; case 'o' : contenu[i]='0'; break; case 'n' : contenu[i]='^'; // Déolé, c'est par caractère, tu ne peux pas remplacer par plusieurs. // Essaie de bidouiller une fonctionne qui le fait. break; case 'j' : contenu[i]=']'; // ... // // ... // default : break; } } return contenu; } -
Salut,
Voici un code qui trie chacun des caractères.
Bye ;)
#include <stdio.h> #include <stdlib.h> char* tri(char*); int main(int argc, char *argv[]) { char phrase [100]; while(1){ printf("Entrez un mot :\n"); scanf("%s", &phrase); printf("\nVous avez entré :\n%s\nLa phrase finale est :\n", phrase); printf("%s\n\n", tri(phrase)); system("pause"); system("cls"); // Efface l'écran sous Windows } system("pause"); return 0; } char* tri(char* contenu){ int i; for(i=0; contenu[i]!='\0'; i++){ switch(contenu[i]){ case 'B' : contenu[i]='8'; break; case 'o' : contenu[i]='0'; break; case 'n' : contenu[i]='^'; // Déolé, c'est par caractère, tu ne peux pas remplacer par plusieurs. // Essaie de bidouiller une fonctionne qui le fait. break; case 'j' : contenu[i]=']'; // ... // // ... // default : break; } } return contenu; } -
Merci, je vais essayer :D