Python: cueva de Alí Babá y los cuarenta ladrones

En este post de programación en Python vamos a ver cómo resolver un ejercicio propuesto que trata sobre simular la cueva de Alí Babá y los cuarenta ladrones. Específicamente dice:

Elaborar una aplicación de línea de comandos en Python cuyo propósito sea emular la cueva de la historia de “Alí Babá y Los Cuarenta Ladrones” que se abre mágicamente con la frase “Ábrete Sésamo”. En esta aplicación se tomará el nombre del ladrón por teclado y guardará la cantidad de intentos que el ladrón realiza hasta abrir la puerta. Si el ladrón intenta 10 veces o más entonces la puerta se cerrará eternamente (el programa debe terminar).

Veamos cómo resolver este ejercicio propuesto, es decir, su solución en el lenguaje de programación Python.

(más…)

Ejercicios resueltos de consultas con SQL en el gestor MySQL - MariaDB

Ejercicios resueltos con MySQL – Parte 4

Esta es la cuarta entrega donde muestro ejercicios propuestos con su respectiva solución para practicar consultas SQL usando el gestor MySQL o MariaDB. Básicamente se proponen algunos ejercicios de consultas sobre un banco de datos ya definido, y luego se resuelven.

La primera parte está aquí, la segunda aquí y la tercera aquí. Hoy vamos a ver algunas consultas y vamos a trabajar con datos de temperatura y humedad por fecha y hora que recogimos usando el sensor DHT22.

Entre algunas funciones que veremos está MAX, MIN, IF, AVG, SUBSTR y las operaciones usando WHERE, ORDER BY, DISTINCT y LIMIT. Verás que será muy entretenido y que sacaremos algunos ejercicios de todos estos datos.

(más…)

Python: Tamagotchi con POO

El día de hoy vamos a resolver un ejercicio de programación en Python utilizando Programación orientada a objetos, también conocida como POO o como OOP.

Se trata de simular un Tamagotchi, la mascota virtual (o algo así, nunca tuve uno) en donde el mismo se debe alimentar, jugar, etcétera. El ejercicio dice así:

Elaborar una aplicación de línea de comandos en Python cuyo objetivo es emular un Tamagotchi usando Programación Orientada a Objetos. Todo personaje de Tamagotchi se basa es un animal y debe tener un nombre y género.

El nombre lo determina el usuario, y el género lo determina el sistema. El Tamagotchi tendrá una medición de hambre, de felicidad, y de salud. Las mediciones de hambre y de felicidad inician en 10, mientras que el de salud inicia en 0. Por cada turno que pase, se disminuye las mediciones de hambre y de felicidad en 1.

En cada evento se deben ejecutar una de las siguientes acciones: alimentar (incrementa medición de hambre 2 unidades), jugar (incrementa medición de felicidad 3 unidades), nada.

Si sobre alimentas a Tamagotchi, se incrementa la medición de salud en 2. No existe manera de decrementar la medición de salud. No existe manera de sobreexceder la medición de felicidad.

Cuando la medición de salud esté en 10, o la medición de felicidad esté en 0, o la medición de hambre esté en 0, el Tamagotchi muere y el juego termina.

Veamos entonces cómo simular esto usando clases y objetos en Python.

(más…)

Python: ejercicio de provincias y distritos

El día de hoy vamos a resolver un ejercicio de programación en Python. Se trata de un programa que gestiona provincias y distritos usando colecciones; específicamente en este caso vamos a usar diccionarios.

El programa solicita lo siguiente:

Elaborar una aplicación de línea de comandos en Python cuyo propósito sea gestionar todas las provincias de un país, junto con sus respectivos distritos. Deben utilizar colecciones para lograrlo. La aplicación deberá permitir la consulta bajo el nombre de una provincia, y de ahí, poder mostrar todos sus distritos. Es importante que el programa no falle por ninguna excepción o error.

Veamos cómo resolver esto usando el lenguaje de programación Python.

(más…)

Python – Media y mediana de lista

La media de un arreglo es el promedio del mismo. Para obtenerla se divide la sumatoria de los elementos entre la longitud del mismo. Por otro lado, la mediana es el elemento que está a la mitad del arreglo ordenado.

En este post de programación en Python vamos a ver cómo obtener la media y la mediana de una lista, arreglo o array.

Por cierto, en cuanto a la mediana… si la longitud del arreglo es par, se promedian los dos elementos centrales.

Nota: en este post me referiré a la misma cosa cuando diga arreglo, array o lista.

(más…)

Por parzibyte, hace

C – Ejercicio resuelto sobre gestión de películas

En este post de programación en C voy a resolver un ejercicio que trata sobre cines y la gestión de películas. Es un ejercicio para practicar ANSI C. Dice así:

Diseñar un programa en Lenguaje C que almacene la información de las películas que se proyectan en las distintas salas de los siguientes cines: CDMX Norte, CDMX Oriente, Reforma y Perisur.

Cada cine tiene 3 salas, hay 2 horarios distintos en cada sala (4:00 pm y 6:00 pm) Realizar un menú para el uso de este programa. En el programa debe definirse las estructuras de datos (struct) necesarias para almacenar la información sobre las películas: título de la película, hora de inicio, cines y salas donde se proyecta, clasificación (A todo público, B adolescentes y adultos y C mayores de 21 años).

El menú del programa debe tener las siguientes opciones:

  1. Registrar una película. Si ya había alguna película, está será sustituida por la proporcionada en esta opción.
  2. Desplegar toda la información de la película que se proyecta en la sala de un cine. Se pedirá al usuario que proporcione el cine, la sala, la hora y el día correspondiente, y el programa listará la información de la película que está proyectada en la cartelera. En caso de no haber película proyectada, se visualizará el mensaje correspondiente.
  3. Buscar película. El usuario elige la película que quiere buscar y desplegar toda la información.
  4. Listar películas que se están exhibiendo en un cierto día por clasificación de edad.
  5. Salir del Programa.

Veamos entonces cómo resolver ese ejercicio.

(más…)

Python: convertir decimal a hexadecimal

En este artículo de programación en Python te voy a enseñar cómo convertir un número decimal en base 10 a un número hexadecimal en base 16. Es el último post sobre Python y conversión de números que he venido haciendo.

En resumen te mostraré el código fuente de cómo pasar de decimal a hexadecimal en Python usando código propio, y no funciones que ya vienen dentro del lenguaje.

(más…)

Convertir hexadecimal a decimal en Python

Siguiendo con los tutoriales de programación en Python y la conversión de números hoy vamos a ver cómo convertir un número hexadecimal a decimal. Es decir, convertir un número en base 16 como FF a 255 en base 10.

Para esto vamos a programar la función, y no vamos a usar métodos que el lenguaje ya incorpore. Al final tendremos un código propio que realiza la conversión de hexadecimal a decimal.

(más…)

C – Ejercicio con matriz de calificaciones, alumnos, materias y promedios

En este post de programación en C, también conocido como ANSI C vamos a resolver un ejercicio propuesto que trabaja con matrices, calificaciones, alumnos, materias y promedios. Es un ejercicio que voy a resolver, el mismo dice así:

Escriba un programa que tenga implementadas las siguientes funciones:

  1. Que reciba una matriz de nombre calificaciones y la llene de manera aleatoria con calificaciones de n alumnos y m materias. En la última columna de la matriz se calculará el promedio de cada alumno respectivamente.
  2. Reciba la matriz anterior y una matriz con los nombres de los alumnos. La función imprimirá los datos de nombres y calificaciones de cada alumno, organizados como una tabla. Así mismo, calculará e imprimirá el menor y mayor promedio correspondiente al alumno o los alumnos respectivamente.

Veamos entonces el código

(más…)

Python: convertir binario a decimal

En este ejercicio de programación y algoritmos en Python te voy a enseñar cómo convertir un número binario (base 2) a un número decimal (base 10) usando algoritmos propios, es decir, vamos a resolver el ejercicio usando un algoritmo manual, y no una función ya integrada en el lenguaje.

Verás que será realmente sencillo hacer la conversión numérica de binario a decimal en Python, pues básicamente es hacer multiplicaciones, elevar un número e ir sumando.

Al final vamos a programar una función que, dado un número en base 2, regrese el número en base 10.

(más…)

Python: suma y promedio de matriz

En este post de programación en Python te enseñaré cómo obtener la suma de todos los elementos de una matriz, así como también obtener el promedio de la misma.

Básicamente vamos a calcular el promedio de una matriz, y para ello necesitamos la suma de los elementos además de la cantidad de los mismos.

Veamos cómo resolver este ejercicio de programación para principiantes.

(más…)

Python – Número top

En este post de programación en Python vamos a resolver un ejercicio. Se trata de un problema para saber si un número es Top. El ejercicio dice:

Escriba una función que al recibir un numero entero, verifique que si al sumar las cifras del número y dividirlo por su cantidad de cifras. el resultado es un numero primo. Si es así, se dice que es un numero top. Ej.: 2783 es un número Top, ya que 2+7+8+3=20 / 4 (cifras) = 5, y 5 es primo.

Veamos cómo resolver este ejercicio en Python.

(más…)

Python: ejercicio resuelto, buscar palabras en archivo de texto

En este post voy a resolver un ejercicio con Python. Dicho ejercicio dice así:

Usted esta trabajando con el equipo encargado de la integración de el nuevo CLI de un sistema operativo. En este momento usted se dedica a hacer pruebas para manipular archivos de texto, por lo que le asignan la siguiente tarea:

Debe realizar un programa que lea del usuario una palabra. Luego, vaya a buscar esta palabra en un archivo de texto llamado input.txt. En esta busqueda su programa debe hacer lo siguiente:

Contar cuantas ocurrencias de la palabra hay en el archivo de texto (despues de haber leido todo su contenido) y desplegar en pantalla esa cantidad.
Crear otro archivo llamado llamado result.txt, el cual contenga solamente las lineas en donde se encuentra la palabra buscada, desplegando al principio de la linea, su numero linea. Es decir que si fuera la primera linea, el numero es 1, si es la tercera el numero es 3, etc.
Ejemplo:

input.txt

Este es un archivo de prueba, para
ver si nuestro buscador funciona
de no ser asi, tendremos que hacer
mas pruebas y decidir que hacer.
Palabra a buscar: de
Ocurrencias: 2

result.txt

1 – Este es un archivo de prueba, para
3 – de no ser asi, tendremos que hacer

Básicamente se trata de recorrer el archivo, buscar las líneas en donde se encuentra la búsqueda y colocar los resultados (con el número de línea) en otro archivo.

Veamos cómo se soluciona.

(más…)