Compression RLE

Signaler
Messages postés
7
Date d'inscription
samedi 7 janvier 2006
Statut
Membre
Dernière intervention
3 décembre 2006
-
Messages postés
7
Date d'inscription
samedi 7 janvier 2006
Statut
Membre
Dernière intervention
3 décembre 2006
-
<tt>probleme je ne compredns pas pourkoi ca renvoye pas la bonne chose

#include <stdio.h>
#include <stdlib.h>

//lit le fichier caractere par caractere//
void RLEcomp(){
int k;
char c,p='\0';
while((c=fgetc(stdin))!=EOF){
if (c==p){
k+=1;
}
else{
if(k!=1 || k==1) {

printf("^%c%d\n",p,k);
k=1;
}
}
}
p=c;

}

//////////////////////////////////////////

int main(){
printf("coucouc\n");
RLEcomp();
return 0;
}</tt>

1 réponse

Messages postés
7
Date d'inscription
samedi 7 janvier 2006
Statut
Membre
Dernière intervention
3 décembre 2006

j'ai oublier ce mode compression est utilisé par ex sur le acsii-art

il consiste a compter la frequence des lettres qui se suivent espacé par un caractere special ici ^ par ex



texte à compresser:

aaaaaaaaaaaaaaabbbbbbbbbbbbbbbcdsaaaa

texte compressé:

15a15b1c1d1s4a