Descompactador Simples
Publicado por Ricardo Rodrigues Lucca 27/02/2004
[ Hits: 8.723 ]
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; }
Programa para cálculo de números complexos
Organizar variáveis em ordem crescente
Nenhum comentário foi encontrado.
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI
Plasma 6 com partes em inglês (0)
A area de trabalho ficou preta (6)
De volta para o futuro - ou melhor, para o presente (22)