PENSAMIENTO COMPUTACIONAL (PROBLEMA PRACTICO)


El pensamiento computacional es un concepto que se usa para referirse al proceso por medio del cual una persona trata de abordar, comprender y resolver un problema complejo aplicando técnicas propias de la computación en el mundo que le rodea

El pensamiento computacional fomenta el desarrollo de habilidades como el pensamiento crítico, la creatividad, el trabajo en equipo la constancia y el aprendizaje a partir de los errores.

Con la ayuda de ChatGPT, se desarrolló el siguiente mapa conceptual el cual nos ayuda a comprender el concepto de pensamiento computacional 


Aplicando el concepto de Pensamiento Computacional, resolveremos un problema de Física Moderna, el cual consiste en determinar La Energía Relativista de una Partícula

La energía total de una partícula en relatividad especial se calcula usando la ecuación:

=()2+(2)2
donde:

  • es el momento de la partícula,
  • es la masa en reposo de la partícula,
  • es la velocidad de la luz (aproximadamente 3×108m/s).

Descomposición del Problema

  1. Entrada de Datos: Obtener la masa y el momento de la partícula.
  2. Cálculo de la Energía: Usar la ecuación para calcular la energía.
  3. Salida de Resultados: Mostrar la energía calculada.

Patrones a Reconocer

  • Uso de fórmulas físicas para calcular valores derivados.
  • Validación de entradas para asegurar que los datos son numéricos y positivos.

Abstracción

  • Crear una función que tome masa y momento como argumentos y devuelva la energía.

Diseño del Algoritmo

  1. Crear una función calcular_energia(masa, momento) que implemente la fórmula.
  2. Pedir al usuario la masa y el momento.
  3. Validar las entradas.
  4. Llamar a calcular_energia con las entradas y mostrar el resultado.

Implementación en Python


Con la ayuda de este código escrito en Python podemos calcular de forma rápida la energía de una partícula con tan solo proporcionar la masa y el momento de la misma


ANEXOS

Código del mapa conceptual 

import matplotlib.pyplot as plt
import networkx as nx

# Crear un gráfico dirigido
G = nx.DiGraph()

# Añadir nodos
central_node =
"Pensamiento Computacional"
components = [
"Descomposición", "Reconocimiento de Patrones", "Abstracción", "Diseño de Algoritmos"]
examples = [
"Ejemplo: Proyecto por Módulos", "Ejemplo: Patrones en Datos", "Ejemplo: Diagrama de Flujo", "Ejemplo: Receta de Cocina"]
applications = [
"Educación", "Problemas Cotidianos", "Desarrollo de Software", "Innovación"]

G.add_node(central_node)
G.add_nodes_from(components)
G.add_nodes_from(examples)
G.add_nodes_from(applications)

# Añadir conexiones
edges = [(central_node, comp)
for comp in components]
edges += [(comp, ex)
for comp, ex in zip(components, examples)]
edges += [(components[-
1], app) for app in applications]

G.add_edges_from(edges)

# Posiciones personalizadas para los nodos
pos = {
central_node: (
0, 0),
"Descomposición": (-1, 1),
"Reconocimiento de Patrones": (1, 1),
"Abstracción": (-1, -1),
"Diseño de Algoritmos": (1, -1),
"Ejemplo: Proyecto por Módulos": (-1.5, 1.5),
"Ejemplo: Patrones en Datos": (1.5, 1.5),
"Ejemplo: Diagrama de Flujo": (-1.5, -1.5),
"Ejemplo: Receta de Cocina": (1.5, -1.5),
"Educación": (0.5, -2),
"Problemas Cotidianos": (1.5, -2),
"Desarrollo de Software": (2.5, -2),
"Innovación": (3.5, -2)
}

# Dibujar el gráfico
nx.draw(G, pos, with_labels=
True, node_size=3000, node_color="lightblue", arrows=True, font_size=10)

# Título y ajustes finales
plt.title(
"Mapa Conceptual: Pensamiento Computacional")
plt.axis(
"off") # Ocultar los ejes
plt.show()

Código en Python que se utiliza para calcular el nivel de Energía de una partícula

import math

def calcular_energia(masa, momento):
c =
3 * 10**8 # Velocidad de la luz en m/s
energia = math.sqrt((momento * c)**
2 + (masa * c**2)**2)
return energia

# Entrada de datos
masa =
float(input("Ingrese la masa de la partícula (en kilogramos): "))
momento =
float(input("Ingrese el momento de la partícula (en kg·m/s): "))

# Validación de entradas
if masa < 0 or momento < 0:
print("La masa y el momento deben ser valores positivos.")
else:
# Cálculo y salida
energia = calcular_energia(masa, momento)
print(f"La energía de la partícula es: {energia} Joules")






 

Comentarios

Entradas populares de este blog

Uso de Numpy, Pandas y ChatGPT para realizar un análisis estadístico de Calificaciones

Primeros Pasos en el Análisis de Datos