Descompactador Simples
Publicado por Ricardo Rodrigues Lucca 27/02/2004
[ Hits: 8.960 ]
Homepage: http://aventurasdeumdevop.blogspot.com.br/
Este é o descompactor da tecnica arcaica run-length e deve ser usado com o script "Compactador Simples" para funcionar adequadamente.
Qualquer duvida sobre qualquer um dos programas email-me.
/*
Escrito Por Ricardo Rodrigues Lucca
Este programa descompacta um arquivo usando a seguinte forma:
- Se a uma dupla de caracteres seguidos
- Pega-se o proximo caracter
- O caracter pegado indica quantas vezes o caracter duplicado devera ser ainda repetido.
- Se não tiver dois caracteres seguidos
- Escreve o caracter pego anteriormente
Ex.:
Arquivo Comprimido: 97 97 3 100 100 0 2 2 1
Arquivo Descomprimido: 97 97 97 97 97 100 100 2 2 2
OBS: O arquivo esta bem simples acredito que ninguem vai ter problemas de entendimento. Qualquer coisa email-me.
OBS2: Me basiei no site http://www.ulbra.tche.br/~danielnm/ed/E/polE.html, especificamente na tecnica run-length.
*/
#include <stdio.h>
FILE *arq;
void testa(void)
{
char s[255];
printf("Digite o nome do arquivo: ");
scanf(" %s", s);
arq = fopen(s,"r");
if (arq==NULL) {
printf("Arquivo nao existe!\n");
testa();
}
}
void descompacta(void)
{
int p, n, r, check=0;
FILE *s;
s = fopen("nve","w");
r = 0;
n = fgetc(arq);
while (!feof(arq)) {
p = n;
n = fgetc(arq);
if (check==1) {
check = 0;
continue;
}
if (p==n) {
fputc(p,s);
fputc(p,s);
p = fgetc(arq);
while (p>0)
{
fputc(n,s);
p--;
}
r=0;
check = 1;
}
else {
fputc(p,s);
r=0;
}
}
fclose(s);
}
int main(void)
{
testa();
descompacta();
fclose(arq);
return 0;
}
Jogo da Velha contra o Computador.
Criando usuários através de arquivo texto
Nenhum comentário foi encontrado.
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
Preciso recuperar videos *.mp4 corrompidos (6)
É normal não gostar de KDE? (11)
Secure boot, artigo interessante, nada técnico. (2)









