[C] Rotation d'une chaine de caractère
Fermé
ozymandiass
Messages postés
5
Date d'inscription
vendredi 15 juin 2007
Statut
Membre
Dernière intervention
28 août 2007
-
15 juin 2007 à 12:00
mamiemando Messages postés 33446 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 20 décembre 2024 - 16 juin 2007 à 14:31
mamiemando Messages postés 33446 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 20 décembre 2024 - 16 juin 2007 à 14:31
A voir également:
- Rotchar
- Caractère ascii - Guide
- Rotation ecran pc - Guide
- Caractere speciaux - Guide
- Caractère spéciaux - Guide
- Chaine tnt gratuite sur mobile - Guide
4 réponses
mamiemando
Messages postés
33446
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
20 décembre 2024
7 812
15 juin 2007 à 12:29
15 juin 2007 à 12:29
Je te propose un code dans ce genre :
Ce qui donne à l'exécution :
Bonne chance
#include <stdio.h> #include <stdlib.h> void strcpy_dec(char *dst,const char *src,unsigned decalage){ unsigned i,n = strlen(src); for(i=0;i<n;++i) dst[i] = src[(i+decalage)%n]; dst[n] = '\0'; } int main(){ char *str="aaaabbbbccccdddd"; char *tmp = (char *)malloc((strlen(str)+1)*sizeof(char)); strcpy_dec(tmp,str,4); printf("str = %s\n",str); printf("tmp = %s\n",tmp); free(tmp); return 0; }
Ce qui donne à l'exécution :
(mando@aldur) (~) $ gcc -W -Wall -g plop.c (mando@aldur) (~) $ ./a.out str = aaaabbbbccccdddd tmp = bbbbccccddddaaaa
Bonne chance
mamiemando
Messages postés
33446
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
20 décembre 2024
7 812
15 juin 2007 à 23:48
15 juin 2007 à 23:48
Oui ou utiliser un décalage négatif (auquel cas changer unsigned decalage par int decalage).
Utilisateur anonyme
16 juin 2007 à 00:23
16 juin 2007 à 00:23
bonjour
en utilisant les masque et les décalages il y a moyen de faire quelque chose de simple
en utilisant les masque et les décalages il y a moyen de faire quelque chose de simple
mamiemando
Messages postés
33446
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
20 décembre 2024
7 812
16 juin 2007 à 14:31
16 juin 2007 à 14:31
Vas-y Lapinkiller montre moi, ça m'intéresse :-)
ozymandiass est c eque ton problème est résolu ?
ozymandiass est c eque ton problème est résolu ?
15 juin 2007 à 15:24
j'avais fait quelque chose de cette ordre là :
Mais j'ai pas passé en paramètre la valeur du décalage.
Merci
15 juin 2007 à 15:46
Est ce qu'il suffit de faire : for(i=0;i<n;++i) dst[i] = src[(i-decalage)%n]; ?
Merci