Cola en C - Programación de estructuras de datos con listas

Cola en C – Estructura de datos

En este post vamos a implementar una estructura de datos en C.

Se trata de una cola, que a su vez es una lista en donde iremos colocando los elementos al final de la misma, contrario a una pila en donde cada elemento va a la parte superior.

Hay varias operaciones para una cola en C, pero por ahora te mostraré las 2 básicas: la de encolar un elemento y la de recorrer la cola.

Con esos dos métodos ya puedes calcular el tamaño de la lista, comprobar si un elemento existe en la cola y muchas cosas más.

Recuerda que la cola en C puede ser de cualquier tipo y guardar cualquier cantidad de datos de cualquier tipo. Al final nosotros le asignamos memoria dinámicamente con malloc.

(más…)

Por parzibyte, hace
Ejercicio resuelto con Python - Facturación media con archivos CSV

Python: información fiscal de archivo CSV (ejercicio resuelto)

Hoy vamos a resolver un ejercicio con Python en donde vamos a trabajar con diccionarios, archivos CSV y métodos de ordenamiento.

El ejercicio en cuestión dice así:

Se dispone de un CSV con información fiscal de una empresa en diferentes años. Dicha información corresponde a la facturación de la empresa por cada uno de los trimestres.

Se pide escribir en Python que:

  1. Permita acceder a los datos de manera automatizada leyendo cada año y obtener la media de la facturación anual.
  2. Permita escribir en un documento txt cada una de la información obtenida del apartado anterior escribiéndolo cronológicamente de mas antiguo a mas moderno.

(más…)

Convertir CSV a lista de diccionarios con Python - Ejemplo de código

Convertir CSV a lista de diccionarios en Python

Hoy vamos a ver un ejemplo simple con Python y los archivos CSV. Veremos cómo convertir un CSV a un arreglo.

Primero vamos a convertir cada columna del archivo a un diccionario de Python, y después vamos a agregar ese diccionario a nuestra lista.

En el ejemplo te mostraré cómo leer datos enteros y flotantes, así como cadenas. De este modo tú podrás leer cualquier archivo separado por comas para tenerlo como array en Python.

Nota: yo decidí usar un diccionario, tú podrías usar una lista de listas o cualquier otra cosa.

(más…)

Python - Ordenar arreglo con merge sort

Python: ordenar lista con merge sort

Hoy vamos a ver cómo implementar el ordenamiento por mezcla o merge sort en Python. Básicamente este algoritmo nos va a servir para ordenar un arreglo de cualquier tipo (suponiendo que los valores son comparables).

Hay varios enfoques para este algoritmo; algunos usan una función y otros usan 2. Yo usaré éste último enfoque pues todo queda más claro.

Por cierto, también usaremos la recursividad, ya que es un aspecto clave al momento de ordenar un array con merge sort en Python.

(más…)

Python: ejercicio de artículos y ventas

En este post de programación en Python vamos a resolver un ejercicio que gestiona algo así como una tienda, en donde se registran artículos y se realizan ventas; todo esto usando listas o arreglos.

Esto que te muestro es un ejercicio básico de programación en Python, pero de igual modo es útil para los que están aprendiendo Python y quieren mejorar sus habilidades.

La propuesta dice:

Realizar un programa en Python para llevar la gestión de los precios de los artículos de una tienda, así como la cantidad vendida en total de cada artículo para lo cual, habrá que tener 3 vectores.

  1. Nombres: guardará los nombres de los artículos
  2. Precios: guardará los precios de los artículos
  3. Cantidades vendidas: guardará la cantidad vendida en total de cada artículo

Además, este programa debe implementar las siguientes opciones que van a mostrarse en un menú:

  1. Introducir un artículo nuevo – Registrar un nuevo artículo con nombre y precio
  2. Hacer una venta – Solicitar nombre de producto y cantidad a vender
  3. Mostrar información – Mostrar nombre, precio, cantidad vendida e importe de los artículos, además del total
  4. Borrar un artículo
  5. Borrar todos los artículos
  6. Salir

Obviamente cada para opción mencionada se debe programar el funcionamiento. Veamos entonces cómo se resuelve este ejercicio de programación.

(más…)

Obtener lista de archivos (imágenes) con PHP y glob

PHP: obtener imágenes de directorio

En este post de programación en PHP te mostraré cómo escanear el directorio actual (donde se ejecuta el script) para obtener una lista de todas las imágenes existentes, ya sean gif, png o jpg.

Obviamente con este ejemplo tú vas a poder obtener la lista de archivos de cualquier extensión o que cumplan con determinado patrón. Para esto vamos a usar la función glob.

(más…)

Agregar útiles escolares a la lista

Software para listas de útiles escolares

En este post te mostraré un programa para llevar el registro de listas de útiles escolares. Básicamente este software gestiona listas escolares y los datos que estas llevan, por ejemplo:

  • Datos del alumno como el nombre de la escuela, grado, grupo
  • Lista de productos obtenidos de un inventario, mismos que se descuentan al entregar la lista
  • Registro de abonos en caso de que el cliente quiera obtener la lista en pagos
  • Costo adicional por forrado de las libretas, cuadernos o útiles
  • Total de la lista incluyendo costo adicional por forrado o etiquetas
  • PDF (tipo recibo o boleta) para el cliente y para la lista de útiles física
  • Saber si la lista está forrada, surtida, lista y liquidada

En resumen es un programa que lleva el registro de útiles escolares con el total monetario, abonos, productos, forrado, etiquetado, etcétera.

Por cierto, esta es una mejora del sistema gratuito para Windows que presenté hace algún tiempo. Una vez dicho esto, veamos los detalles del gestor de listas de útiles escolares.

(más…)

Lista de tareas pendientes con Angular - Ejecutando proyecto con ng serve

Lista de tareas pendientes con Angular – ToDo list

En este post te mostraré un proyecto muy sencillo creado con Angular. Se trata de una lista de tareas pendientes, ToDo list, to-do list o como sea que le llames.

Vamos a usar el framework Angular y el lenguaje de programación TypeScript para crear una lista de tareas por hacer. Tendrá las opciones de agregar, eliminar, editar y marcar como terminada.

Por cierto, en este caso vamos a usar localStorage para almacenar la lista pero bien podrías usar una API con un lenguaje como PHP o cualquier otra cosa.

Para tener el proyecto simple me he enfocado a no usar frameworks CSS, así que solo será HTML plano. De todos modos lo que importa es cómo vamos a manejar la lista de tareas pendientes con Angular.

(más…)

Ejercicio en C++ con archivo CSV, listas ligadas y disponibilidad de camas

En este post te mostraré la solución a un ejercicio en C++ que tiene que ver con archivos CSV y disponibilidad de camas en hospitales.

Básicamente es leer un archivo CSV, pasarlo a la lista enlazada (estructura de datos) y luego generar estadísticas, eliminar repetidos, eliminar un registro y borrarlo.

Nos vamos a basar ampliamente en dos tutoriales que ya he publicado en mi blog: leer archivos CSV con C++ y listas enlazadas en C++.

(más…)

Lista de tareas (to do list) en localstorage con JS

Lista de tareas pendientes con JavaScript

Hoy te mostraré cómo hacer una lista de tareas pendientes con JavaScript puro, sin frameworks. A esto también se le conoce como To Do list.

Este proyecto de lista de pendientes es un proyecto básico para comenzar en este mundo de la programación web.

Solo usaremos JavaScript, arreglos, acceso a los elementos del DOM, eventos y almacenamiento con localstorage.

Lo que tendremos al final será una lista de tareas. A cada tarea podremos marcarla como completada o eliminarla, y también agregar una nueva tarea. Todo será guardado en LocalStorage dentro del navegador web.

(más…)

Eliminar impares de lista con Python

Python: eliminar impares de lista

En este post de programación en Python te mostraré cómo eliminar números impares de una lista, arreglo o array.

Básicamente vamos a filtrar los elementos de la lista para que la lista solo contenga números pares, esto lo vamos a lograr eliminando los otros elementos impares.

Para hacer las cosas simples y no mover índices vamos a crear una nueva lista en donde solo vamos a colocar a los pares.

(más…)

Lista ligada en C++ - Programación y estructura de datos

Lista ligada en C++

Hoy te enseñaré cómo implementar una lista ligada en el lenguaje de programación C++ también conocido como CPP.

Además de mostrarte la clase Lista y la clase Nodo, te enseñaré las operaciones que podemos realizar con ella. Son las siguientes:

  • Recorrer la lista imprimiendo los valores
  • Verificar si un elemento existe dentro de la lista
  • Eliminar un elemento de la lista ligada en C++
  • Crear una nueva lista sin elementos repetidos (eliminar duplicados)

Todo esto usando C++ e implementando los métodos y algoritmos manualmente. Por cierto, en este caso el tipo de dato que vamos a almacenar será un int pero fácilmente puedes cambiarlo a cualquier otro tipo de dato.

(más…)