# Tema 1. Fundamentos de Programación

### Tabla de Contenidos

#### 📖 [Capítulo 1: ¿Qué es Programar? De la Idea al Código](/tema-1.-fundamentos-de-programacion/capitulo-1-que-es-programar-de-la-idea-al-codigo.md)

* 1.1. El Arte y la Ciencia de Resolver Problemas
* 1.2. El Algoritmo: La Receta del Éxito
* 1.3. El Programa: La Materialización del Algoritmo

#### 🧠 [Capítulo 2: El Lenguaje del Pensamiento. Representando Algoritmos](/tema-1.-fundamentos-de-programacion/capitulo-2-el-lenguaje-del-pensamiento.-representando-algoritmos.md)

* 2.1. Introducción: Visualizando la Lógica
* 2.2. Diagramas de Flujo: Una Visión Gráfica
* 2.3. Pseudocódigo: Lógica en Lenguaje Humano

#### 💻 [Capítulo 3: El Programa. Estructura y Conceptos Esenciales](/tema-1.-fundamentos-de-programacion/capitulo-3-el-programa.-estructura-y-conceptos-esenciales.md)

* 3.1. Introducción: La Anatomía de un Programa
* 3.2. El Modelo Universal: Entrada-Proceso-Salida (IPO)
* 3.3. Estructura y Legibilidad del Código
* 3.4. Errores: El Enemigo a Vencer

#### 🔧 [Capítulo 4: Lenguajes de Programación. Herramientas del Pensamiento](/tema-1.-fundamentos-de-programacion/capitulo-4-lenguajes-de-programacion.-herramientas-del-pensamiento.md)

* 4.1 Introducción: ¿Por qué existen tantos lenguajes?
* 4.2 El Espectro de la Abstracción: De la Máquina al Humano
* 4.3 Paradigmas de Programación: Diferentes Maneras de Pensar
* 4.4 De Código Fuente a Ejecución: Compiladores e Intérpretes
* 4.5 El Proceso de Programación Moderno

#### 📦 [Capítulo 5: Variables y Datos. Los Ladrillos del Código](/tema-1.-fundamentos-de-programacion/capitulo-5-variables-y-datos.-los-ladrillos-del-codigo.md)

* 5.1. Introducción: Almacenando Información
* 5.2. El Enfoque de Python: Tipado Dinámico y Fuerte
* 5.3. Tipos de Datos Fundamentales
* 5.4. Operadores Aritméticos y Precedencia

#### ⚡ [Capítulo 6: Interactuando con el Mundo. E/S y Operadores Lógicos](/tema-1.-fundamentos-de-programacion/capitulo-6-interactuando-con-el-mundo.-e-s-y-operadores-logicos.md)

* 6.1. Introducción: Diálogo y Decisión
* 6.2. El Operador de Asignación `=`
* 6.3 Operadores de Comparación y Lógicos
* 6.4. Entrada de Datos: La Función `input()`
* 6.5. Salida de Datos: La Función `print()`

#### 🏗️ [Capítulo 7: Estructuras de Control. Dirigiendo el Flujo del Programa](/tema-1.-fundamentos-de-programacion/capitulo-7-estructuras-de-control.-dirigiendo-el-flujo-del-programa.md)

* 7.1. Introducción: Los Pilares de la Lógica
* 7.2 Estructura Secuencial
* 7.3. Estructuras Alternativas: Tomando Decisiones
* 7.4. Estructuras Iterativas: El Poder de la Repetición
* 7.5. Control Avanzado de Bucles

***


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://cursopython.fpdeinformatica.com/tema-1.-fundamentos-de-programacion.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
