Estructura de Datos y Algoritmos

Guía interactiva de Bruno Otárola para Estudiantes - Santo Tomás

1. Variables y Tipos de Datos

Las variables son "cajas" con nombre. En Python, el tipo de dato se define automáticamente según lo que guardes:

Tipos Comunes

  • int: Enteros (5, -10)
  • float: Decimales (3.14)
  • str: Texto ("Hola")
  • bool: Lógica (True, False)
nombre = "Bruno"      # Esto es un str
puntos = 10           # Esto es un int
precio = 19.99        # Esto es un float

2. Operadores y Comparaciones

Usamos operadores para cálculos y comparaciones lógicas.

TipoOperadores
Matemáticos+ , - , * , / , ** (potencia)
Comparación== (igual), != (distinto), > , <
Lógicosand (y), or (o)
RECUERDA: = es para guardar (asignar) y == es para preguntar si son iguales.

3. Entrada y Salida (Input / Print)

Para recibir datos usamos input(), pero recuerda que siempre recibe texto. Si quieres números, debes hacer Casting:

# Convertimos el texto de entrada en un número entero
edad = int(input("Dime tu edad: "))

# Mostramos el resultado
print("El próximo año tendrás:", edad + 1)

4. Lógica: IF, ELIF y ELSE

Permite que el programa tome diferentes caminos según se cumpla o no una condición.

if edad >= 18:
    print("Eres mayor de edad")
elif edad > 12:
    print("Eres adolescente")
else:
    print("Eres un niño")

5. Proyecto: Calculadora Completa

Unimos todo: Inputs, Casting de Floats, Menú y Lógica Condicional.

# 1. Pedir números
n1 = float(input("Número 1: "))
n2 = float(input("Número 2: "))

# 2. Menú
print("Seleccione: 1.Suma | 2.Resta | 3.Div")
op = input("Opción: ")

# 3. Proceso
if op == "1":
    print("Suma:", n1 + n2)
elif op == "2":
    print("Resta:", n1 - n2)
elif op == "3":
    if n2 != 0:
        print("División:", n1 / n2)
    else:
        print("Error: No se divide por cero")
else:
    print("Opción inválida")

6. Programación Orientada a Objetos (POO)

Organizamos el código simulando objetos del mundo real mediante Clases (moldes).

class Gato:
    def __init__(self, nombre, color):
        self.nombre = nombre # Atributo
        self.color = color

    def maullar(self): # Método (acción)
        print(self.nombre, "dice: ¡Miau!")

# Crear el objeto (Instanciar)
mi_mascota = Gato("Toby", "Blanco")
mi_mascota.maullar()

Prof. Bruno Otárola - "A un problema, hay una solución."