Artículos sobre programación

¡Bienvenido a "Blog Con Clase"!

Desde aquí hay acceso a pequeños artículos sobre programación, algoritmos, teoría, programación de dispositivos, multimedia, juegos, etc.

Esta sección funciona como un blog, y está abierta para cualquiera que quiera colaborar.

Por supuesto, siempre agradeceremos tu colaboración, ya sea como alumno, como autor de programas, como articulista o como colaborador en la lista de correo.

Artículos

Compresión RLE

El algoritmo de compresión RLE fue muy utilizado en la época de los procesadores de ocho bits, y aún se usa para la compresión de imágenes en ciertos formatos como BMP, o PCX.

Combinaciones

Combinaciones sin repetición de n elementos tomados de r en r

Mientras escribía el código para buscar grupos de casillas para resolver sudokus me encontré ante el problema de generar sucesivamente todas las combinaciones de varias casillas que cumplieran ciertas condiciones. En el caso concreto de los sudokus siempre se trata de conjuntos de nueve casillas, y los grupos varían en tamaño entre dos y siete.

Búsqueda binaria

Una de las tareas que nos solemos encontrar con cierta frecuencia al programar es la de buscar la posición de un valor en un array.

Formulas de validación

Un problema al que nos enfrentamos habitualmente cuando tenemos que obtener datos de un usuario es el de detectar información falsa o con errores.

No siempre, pero cuando se trata de cierto tipo de datos es posible aplicar fórmulas para verificar la veracidad de esos datos.

Algoritmo Big Mod

Pongamos que tenemos que calcular el módulo o resto de la división de un número de muchas cifras entre otro más pequeño, lo suficiente para que pueda almacenarse en un int, o en un long int.

No es algo que no nos vayamos a encontrar nunca. De hecho, la razón de esta entrada es que he necesitado hacer estas operaciones, y pronto veremos un ejemplo en una entrada posterior.

Codificación base64

Base 64 es un sistema de numeración, como el decimal, el binario o el hexadecimal, pero que usa 64 símbolos.

En la práctica no se usa tanto para codificar números, sino sobre todo para codificar datos binarios. El motivo es que usa 64 símbolos imprimibles: 62 de los símbolos consisten en el alfabeto en mayúsculas y en minúsculas y los dígitos 0 a 9. Para los otros dos se usan distintos caracteres, dependiendo de la versión particular del código. Los más habituales son el '+' y el '/'.

Validar datos en C++

En aplicaciones de consola C++, uno de los puntos más problemáticos es la lectura de datos por parte del usuario.

Las funciones de entrada C y los métodos del stream cin resultan poco potentes a la hora de hacer lecturas discriminadas de número enteros, o en coma flotante, fechas o cadenas que se ajuste a un formato determinado.

Arboles-B

Los árboles-B son árboles de búsqueda.

La "B" probablemente se debe a que el algoritmo fue desarrollado por "Rudolf Bayer" y "Eduard M. McCreight", que trabajan para la empresa "Boeing" aunque parece que "Karl Unterauer" desarrolló un algoritmo semejante en la misma época.

Algoritmo de compresión de Huffman

Se trata de un algoritmo que puede ser usado para compresión o encriptación de datos.

Este algoritmo se basa en asignar códigos de distinta longitud de bits a cada uno de los caracteres de un fichero. Si se asignan códigos más cortos a los caracteres que aparecen más a menudo se consigue una compresión del fichero.