Entradas

Mostrando entradas de julio, 2016

Examinador de archivos

XM es un pequeño programa en C que hace un volcado de bytes por consola de cualquier archivo que se le pase por línea de comandos. Muestra bloques sucesivos de 320 bytes en hexadecimal y en modo texto cuando es posible. Permite desplazarse entre los bloques mediante las teclas de comando Arriba, Abajo, Inicio y Fin. Se sale pulsan do Escape. Compilado con MinGW ( Code::Blocks 13.12). Descargar código fuente. /*     xm.c     Hace un volcado de bytes por consola     del archivo que se le pasa como parámetro     en línea de comandos. */ #include <stdio.h> #include <conio.h> #include <ctype.h> #include <windows.h> #define COL 16 #define LIN 20 const int BLOQUE = LIN * COL; typedef enum {   eSalir = 27,           /* Escape */   ePrincipio = 71,       /* 'G' */   eAnterior = 72,     ...

Dominó BRAV

Imagen
Dominó BRAV es una variante que me inventé del tradicional juego de dominó, que consiste en hacer coincidir colores con las cartas adyacentes. Las cartas son cuadradas y están divididas en cuatro sectores coloreados en diferentes combinaciones de blanco, rojo, azul y verde (de ahí el nombre BRAV), de modo que al colocar una carta junto a otra dos sectores de cada una quedan en contacto con los de la otra. Cada sector que coincide con el color del sector correspondiente de la carta adyacente es un punto para el jugador que colocó la carta. He aquí el aspecto de la "mesa de juego". La interfaz es mínima y no hay mensajes, pero funciona así . Instrucciones para el Dominó Brav. Al hacer clic sobre el "mazo" que está abajo a la derecha pregunta si quiere empezar un nuevo juego. Esto se puede hacer en cualquier momento para iniciar otro juego aunque haya uno ya empezado. Al responder que sí, parecen las cartas. El primer turno es del jugador de la derecha. ...

Huffman

Programa en ANSI C que permite codificar y decodificar archivos utilizando el algoritmo de Huffman, que codifica cada byte según su frecuencia relativa. Genera además los siguientes archivos de texto que permiten ver en detalle cómo ha sido el proceso: huffman.tab contiene la lista de caracteres, su frecuencia relativa y la codificación resultante para cada uno. huffman.cod muestra en detalle el proceso de codificación. huffman.dec muestra en detalle el proceso de decodificación. Descargar código fuente /*     huffman.c     Permite codificar y volver a decodificar archivos. */ #include <stdio.h> #include <stdlib.h> typedef struct {     unsigned char byte;     float frecuencia; }    Frecuencia; typedef struct nodoHuffman {     unsigned char byte;     /* S ó lo se utiliza en los nodos hoja */     float frecuencia;     unsigned c...